docker 메모

Matthew Woo·2022년 1월 23일
0

My Review

목록 보기
5/11

도커는 docker, container.. 이름도 잘 짓고 고래 이미지도 참 잘 만든듯

  • docker container run -it --name "ubuntush" ubuntu bash
    --name : container 이름 뭐라할지,
    -it: i 는 input. 화면 상에 input을 받기 위함, tstdout 화면상 출력 d 옵션은 백그라운드에서 실행하게하는 옵션

  • --restart=always
    restart=always 옵션은 run 할 때 마다 매번 해당 이미지로 재시작하라는 옵션

  • Ctrl +P,Q
    docker에서 실행하고 빠져나오는데 실행된 상태 유지시킴 (detach함)

  • docker container attach ubsh, docker exec -it mysql57 bash
    떠 있는 container에 다시 들어감 (attach)

  • exitctrl+D
    container를 종료시키고 나옴

  • docker container stop
    container 종료시킴

  • docker container exec -it (containername) /bin/cat /etc/host

  • docker container exec -it (containername) cat /etc/host
    execrun 중인 container에 명령을 하나 실행함

  • docker container rename ubuntush ub
    rename 옵션은 container 이름 변경해줌. ubuntush -> ub 로.

  • "docker stop docker ps -q"
    떠 있는 container 들을 다 stop 시킴. docker ps -q 가 실행중인 ps id들을 반환하기에

  • --restart=always : 내가 stop 시키지 않는 이상 계속 떠있도록 만듬

  • /bin/docker_bash : /bin/docker_bash 파일을 생성 후,

#!/bin/sh
/etc/init.d/xinetd restart
export LANGUAGE=ko
LC_ALL=ko_KR.UTF-8 bash

생성해놓고 항상 띄울 때 실행되도록 함

  • docker compose run app bash : docker compose로 띄우면서 bash에 들어감

mysql

  • docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root1! --name mysql57 mysql:5.7
    -e는 환경변수. os가 쓰는 환경변수인거임. mysql 최고관리자의 password, 네이밍, 버전붙이기(중요)

  • docker exec -it mysql57 bash
    들어가기

  • mysql -u root -p
    mysql 세계로 들어감

File Copy & Share

  • docker container cp <container-name>:<path> <client-path>
  • docker container cp <client-file> <container-name>:<path>
    ex)
    $> docker container cp nginxserver:/etc/nginx/nginx.conf .
    $> docker container cp ~/.profile ubsh:/home/jade

Share Directory

  • $> docker run -v <localpath>:<container-path>
    -v: 의 왼쪽 오른쪽을 연결함

// docker-compose.yml
environment:
      - PGUSER=${PGUSER:-totoro}
      - PGPASSWORD=${PGPASSWORD:?database password not set}
      - PGHOST=${PGHOST:-db}
      - PGPORT=${PGPORT:-26257}
      - PGDATABASE=${PGDATABASE:-mydb}

- PGPASSWORD=${PGPASSWORD:?database password not set} password 를 이렇게 주고 .env에서 password설정이 안되어 있으면

docker-compose config 실행했을 떄 에러발생. docker-compose config로 제대로 변수 설정이 되었나 확인가능함.

docker commit container_name image_name: 이미지화 시켜놓음


도커 이미지 올리기


profile
지속가능하고 안정적인 시스템을 만들고자 합니다.

0개의 댓글