ERROR 1.
문제 | $ psql postgres role postgres does not exist |
출처 | www.inflearn.com/questions/5647 |
해결 | 윈도우 에선 $ psql --username NAME --dbname DBNAME (su - postgres psql) |
ERROR 2.
문제 | 1)org.postgresql.util.PSQLException: Connection to localhost:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections. 2) $docker ps Error response from daemon: open \\.\pipe\docker_engine_linux: The system cannot find the file specified. |
출처 | blog.joonas.io/173 |
해결 | C:\Program Files\Docker\Docker>"DockerCli.exe" -SwitchDaemon |
도커 |
리눅스의 응용 프로그램들을 프로세스 격리 기술들을 사용해 컨테이너로 실행하고 관리하는 오픈 소스 프로젝트이다. https://ko.wikipedia.org/wiki/%EB%8F%84%EC%BB%A4_(%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4) |
설치 | 다운로드 도커 : https://hub.docker.com/editions/community/docker-ce-desktop-windows 1. 파일명 : Docker Desktop Installer.exe >> 설치 이후에는 컴퓨터 실행시마다 실행됩니다. 2. WSL 2 installation is incomplete. cmd 관리자 권한실행 dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart 다운로드드 커널파일 : x64 머신용 최신 WSL2 Linux 커널 업데이트 패키지https://aka.ms/wsl2kernel 파일명 : wsl_update_x64.msi **WSL 2 는 윈도우 10부터 , **WSL(Windows Subsystem for Linux) : Windows에서 Linux CLI 실행을 위한 기능 https://docs.microsoft.com/ko-kr/windows/wsl/faq 3. 설치 확인 CMD : $docker --version Docker version 20.10.8, build 3967b7d 참고 : https://thinkingtool.tistory.com/entry/window-10-%ED%99%88-%EB%8F%84%EC%BB%A4-%EC%84%A4%EC%B9%98-%EC%97%90%EB%9F%AC-WSL-2-installation-is-incomplete |
도커 기본명령어 | docker ps // 현재 일하는작업 docker ps -a // 모든작업. 컨테이너 목록보기 docker container ls -a 컨테이너 접속 docker exec -it 컨테이너명 bash apt-get(Advanced Packaging Tool: 리눅스 데비안계열 패키지 관리명령어) $ apt-get update >> 업데이트(최신화) 도커로 파일이동 docker cp C:/create.sql mariadb:/create.spl https://docs.docker.com/engine/reference/commandline/cli/ docker restart mariadbC docker stop mariadbC docker start mariadbC docker kill mariadbC $ docker Usage: docker [OPTIONS] COMMAND [ARG...] docker [ --help | -v | --version ] A self-sufficient runtime for containers. Options: --config string Location of client config files (default "/root/.docker") -c, --context string Name of the context to use to connect to the daemon (overrides DOCKER_HOST env var and default context set with "docker context use") -D, --debug Enable debug mode --help Print usage -H, --host value Daemon socket(s) to connect to (default []) -l, --log-level string Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info") --tls Use TLS; implied by --tlsverify --tlscacert string Trust certs signed only by this CA (default "/root/.docker/ca.pem") --tlscert string Path to TLS certificate file (default "/root/.docker/cert.pem") --tlskey string Path to TLS key file (default "/root/.docker/key.pem") --tlsverify Use TLS and verify the remote -v, --version Print version information and quit Commands: attach Attach to a running container # […] |
vi | bash: vi: command not found >> vi 미설치 1. 도커실행 (root@1e8aa1f0a68b: << 콘솔 명이 이렇게 시작안되면 docker exec -it 컨테이너명 bash > 도커실행 ) 2. apt-get update > 설치파일 최신화 apt-get install vim vi 파일명 << 실행 |
mariadb | 1. 설치 $docker pull mariadb > 최신 마리아디비 가져오기 $docker container run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=1234 --name mariadbC mariadb docker 컨테이너 실행 -d(백그라우드) -p(포트 3306 접속, 3306 포워딩), -e (환경변수 설정) --name : 도커 컨테이너 이름, mariadb 다운받은 이미지 이름. (docker container run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=1234 -v /Db/Test/Create/mariadb:/var/lib/mysql --name mariadb mariadb) cf) docker run --name mariadb -e MARIADB_ROOT_PASSWORD=1234 -p 3306:3306 -d mariadbC/server:latest 2. 설치 확인 $docker container ls -a 3. 실행 docker exec -it mariadbC bash mysql -u root -p 4. 데이터 베이스생성 $create database test; $flush privileges; $show databases; $exit create user 사용자ID identified by 비밀번호; grant all privileges on 디비이름.* to '계정'@'localhost' identified by '비번' with grant option; 5. DB 대소문자 무시 설정 (bash: vi: command not found 출력시 상기 vi설치 참고) $vi /etc/mysql/my.cnf insert : i 최하단 추가 : lower_case_table_names = 1 저장 : :wq! $exit $docker restart mariadbC 6. 덤프 실행 docker exec -i mariadb mysql -uroot -p1234 astron_erd < create.sql [1028 mysql,mariadb] 참고 링크 : https://kdinner.tistory.com/27 |
재시작 설정 | docker update --restart {no,on-failure,unless-stopped,always} container_name 참고링크 : https://www.reddit.com/r/docker/comments/ggdbs5/auto_start_containers_windows/ |
하기는 정리 전.
terms.naver.com/entry.naver?docId=3586075&cid=59277&categoryId=59282
<<--가장 쉽게 배우는 도커youtu.be/hWPv9LMlme8 내용 시작. -->>
Front-End, Back-End, Database
개발용 컴퓨터, 서버용 컴퓨터. 동일하게 설치됨.
Q 집에서 여러 서버 버전이 여러개?
>> 가상환경. 으로 나눔. ... 컴퓨터자원이 환경마다 제한, 서버에 중복기능 많아짐.
>> 도커 : 컨테이너. 업무공간으로 활용하는 여러개 컨테이너를 만듬. 낭비 줌.
Q 서버, 로컬 개발환경을 각각설치?
>> 도커 : 동일하게 설치 가능.
설치
1.
www.docker.com/get-started 여기서 Installer.exe 설치.
docs.microsoft.com/.. wsl> 도커 설치 중.._update_x64.msi 설치
설치후 CMD
>docker --version
Docker version 20.10.5, build 55c4c88
2.
윈도우 사용자 내부에 폴더 생성.
VS CODE >> Terminal > new Terminal >
git clone https://gitlab.com/yalco/practice-docker.git
이미지 >> 무한생산 가능한 컨테이너 조립 키트.
CLI >> 명령 줄 인터프리터(command-line interpreter)
<<--가장 쉽게 배우는 도커youtu.be/hWPv9LMlme8 내용은 여기까지.. 노드안써서 -->>
postgres 설치 실행
docker run -it node //
docker run -p 5432:5432 --name postgres -e POSTGRES_PASSWORD=1111 -d postgres
docker run -p 5432:5432 -e POSTGRES_PASSWORD=pass -e POSTGRES_USER=username-e POSTGRES_DB=springdata --name postgres_boot -d postgres
>>
docker run -p 5432:5432 -e POSTGRES_PASSWORD=1234 -e POSTGRES_USER=day -e POSTGRES_DB=diaryDB --name postgres_boot -d postgres
docker run -p 5432:5432 -e POSTGRES_PASSWORD=1234 -e POSTGRES_USER=day -e POSTGRES_DB=diarydata --name postgres_diary -d postgres
>5432/tcp postgres_boot
C:\Users\miseong>docker start postgres_diary
postgres_diary
C:\Users\miseong>docker exec -i -t postgres_diary bash
root@b1de21ce08f0:/# su - postgres
postgres@b1de21ce08f0:~$ psql --username day --dbname diarydata
docker ps // 현재 일하는작업
docker ps -a // 모든작업.
docker stop mariadb 정지
docker container ps -a
docker container rm f00324f6f9c7
docker images 이름
docker image rm 아이디
docker exec -i -t mariadb bash >> bash 실행
mysql -umariadb -p
도커 재기동
postgres_diaryC:\Users\miseong>docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b1de21ce08f0 postgres "docker-entrypoint.s…" 2 days ago Exited (255) 36 minutes ago 0.0.0.0:5432->5432/tcp postgres_diary
C:\Users\miseong>docker start postgres_diary
postgres_diary
C:\Users\miseong>docker exec -i -t postgres_diary bash
root@b1de21ce08f0:/# su - postgres
postgres@b1de21ce08f0:~$ psql --username day --dbname diarydata
psql (13.2 (Debian 13.2-1.pgdg100+1))
Type "help" for help.
diarydata-# \dt
List of relations
Schema | Name | Type | Owner
--------+---------+-------+-------
public | account | table | day
public | study | table | day
(2 rows)\
sudo , sudo -s, sudo su , su 계정, su - 계정
$ sudo 명령어 >> sudo는 권한만 잠시
$ sudo -s
$ sudo su >> sudo -s 또는 sudo su 명령어를 통해 root 계정을 반영구적으로 빌릴
su 계정명 >> 현재 사용자를 로그아웃하지 않은 상태에서 다른 사용자의 계정으로 전환하는 명령어이다.
su - 계정명 >> 환경변수 까지 완전히 다른사용자것으로 사용.
'Web' 카테고리의 다른 글
[1028 운영] 운영 정보 모음 (0) | 2021.05.02 |
---|---|
[1028 shell script] 작성해본 기능 정리 (0) | 2021.05.02 |
[1028 코딩] 코딩팁 모음 (0) | 2021.05.02 |
[1028 mysql,mariadb] (0) | 2021.04.30 |
[1028 gradle] 에러모음 (0) | 2021.04.27 |