공부

나르·2021년 6월 13일
0

Docker

목록 보기
2/3
post-thumbnail

aws lightsail

ec2 탄력적 ip = 고정ip
퍼블릭 ip는 재접속하면 바뀌기 때문에 고정ip로 설정해둠
ssh ubuntu@{고정ip} -i {pem}

domain 구매 후 연결가능

linux

레드햇 계열은 yum을 사용하고
데비안, 우분투 계열은 apt-get을 사용한다.

nginx

PORT={nginx포트}
DJANGO_PORT={장고포트 기본 8000}
DB_HOST=

DB_NAME={DB명}
DB_USER={id}
DB_PASSWORD={pwd}
DB_PORT={db포트 3306...}

#HOST_INTERNAL=

docker

docker volume create {볼륨명}
docker volume inspect {볼륨명} 으로 상세조회 가능

volume, network를 생성해서 docker-compose.yml에 등록
docker network create --driver=bridge --subnet=192.168.0.0/16 br0
드라이버(bridge,null..), 서브넷, 게이트웨이를 설정해줘야함
서브넷과 게이트웨이는 안쓰는 ip로(ex. 10.10.10.0)

docker compose에 수정사항을 반영하기 위해서는 --build 옵션을 사용해 다시 빌드한 후 up해야한다

docker-compose up --build -d 빌드 후 데몬(백그라운드)으로 실행.
docker run {app name} -it [sh,bash] 쉘에 접속
docker-compose up --force-recreate 컨테이너 삭제후 재빌드

lightsail 에서 도커 빌드 오류

  • permission
    $ sudo groupadd docker 도커 그룹 생성
    $ sudo usermod -aG docker $USER 유저를 도커그룹에 추가
    sudo chmod 666 /var/run/docker.sock 소켓 권한 수정
  • pywinpty 에서 멈춤
    pywinpty는 윈도우에서 사용하던 라이브러리
    freeze로 전부 requirements에 추가하는 바람에 들어옴
    삭제한 뒤 재빌드
  • up 중간에 멈추고 kill 됨
    kill되는 것은 보통 메모리부족이 원인. 512mb에서는 멈췃지만 1기가에서 빌드하니 이상없이 진행

프로젝트가 flask와 node서버를 따로 run하기 때문에 docker-compose.yml에 node 서비스를 등록해줘야 했다.

  • 서비스명, 컨테이너 정의
  • 에러:: CMD에 정의해둔 npm, node를 못찾음 - npm install && 잡다한 설정을 빼주니 돌아감

https://roseline124.github.io/kuberdocker/2019/07/24/docker-study06.html

profile
💻 + ☕ = </>

0개의 댓글