Docker 명령어
- 컨테이너 생성
- $ docker create [image]
- 컨테이너 시작 → [container]에는 container name 또는 id 사용 가능
- $ docker start [container]
- 컨테이너 생성 및 시작
- $ docker run [image]
$ docker run \\
-i \\ # 컨테이너에 키보드 입력이 필요한경우
-t \\ # 컨테이너에 TTY할당하여 터미널 이용이 필요한 경우
--rm \\ # 컨테이너 실행 종료후 자동 삭제가 필요할때
--gpus all \\ # GPU 전체 사용
-d \\ # 백그라운드로 실행하고 싶을 때
--name hello-world \\ # 이름을 지정하고 싶을때
-p 80:80 \\ # 포트 바인딩을 하고 싶을 때
-v /opt/example:/example \\ # 볼륨 바인딩을 하고 싶을 때
bbangi/hello-world:latest \\ # 실행할 이미지는 그냥 적어주기
my-command # 마지막은 컨테이너 내에서 실행할 명령어
- 실행중인 컨테이너 상태 확인
- $ docker ps
- 전체 컨테이너 상태 확인
- $ docker ps -a
- 컨테이너 상세 정보 확인
- $ docker inspect [container]
- 컨테이너 일시 중지
- $ docker pause [container]
- 컨테이너 재개
- $ docker unpause [container]
- 컨테이너 종료 (SIGTERM 시그널 전달)
- $ docker stop [container]
- 모든 컨테이너 종료
- $ docker stop $(docker ps -a -q)
- 컨테이너 강제 종료 (SIGKILL 시그널 전달)
- $ docker kill [container]
- 컨테이너 삭제 (실행중이지 X)
- $ docker rm [container]
- 컨테이너 실행 종료 후 자동 삭제
- $ docker run --rm ...
- 컨테이너 강제 종료후 삭제 (SIGKILL 시그널 전달)
- $ docker rm -f [container]
- 중지된 모든 컨테이너 삭제
- $ docker container prune
- 도커 이미지 빌드하기
- docker build -t <이미지이름> .
Docker 사용 (Mongo-DB, MySQL)
- 참고
- 사용 코드
- docker run --name mongodb-container -v ~/data:/data/db -d -p 27017:27017 mongo:5.0.17
- docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=<password> -d -p 3306:3306 mysql:latest
- 실행 코드
- docker exec -it mysql-container bash
- docker exec -it mongodb-container bash
Dbeaver MongoDB 연결
* 도커 내부에 들어가보기 실습
더보기
- conda 환경
- conda env export --no-builds | grep -v "prefix" > environment.yml
- 도커 파일 생성
FROM continuumio/miniconda3 WORKDIR /workspace # ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 # ENV PATH /opt/conda/bin:$PATH # 폴더 통채로 이동 COPY . . # Create the environment: RUN conda env create -f environment.yml # Activate the environment, and make sure it's activated: # RUN conda activate conda_workspace # 설치시 사용자 입력을 요구하는 것을 방지하는 설정 ARG DEBIAN_FRONTEND=noninteractive # RUN ["apt-get", "update"] # RUN ["apt-get", "install", "-y", "zsh"] # RUN wgethttps://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | zsh || true RUN apt-get update ENV TZ=Asia/Seoul RUN apt-get install -y tzdata RUN apt-get -y install libgl1-mesa-glx
- pipenv 환경
- 도커 파일 생성
FROM python:3.9 WORKDIR /workspace COPY . . # 설치시 사용자 입력을 요구하는 것을 방지하는 설정 ARG DEBIAN_FRONTEND=noninteractive RUN ["apt-get", "update"] RUN ["apt-get", "install", "-y", "zsh"] RUN wget <https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh> -O - | zsh || true RUN apt-get update ENV TZ=Asia/Seoul RUN apt-get install -y tzdata RUN apt-get -y install libgl1-mesa-glx RUN /usr/local/bin/python -m pip install --upgrade pip RUN pip install pipenv # ENTRYPOINT ["python", "download_image_file.py"]
- pipenv 터미널 안에 들어가보기
- VScode로 들어가보기
728x90
'코딩 어쩌구 > 서버 ・ 깃 ・도커' 카테고리의 다른 글
[Docker] Image build 할 때 파라미터 넣기 | container 실행할 때 파라미터 넣기 (0) | 2024.04.24 |
---|---|
[linux] 서버를 원격으로 접속 (0) | 2023.08.28 |
[linux] 서버 - 로컬 파일 통신 (scp) (0) | 2023.08.28 |
[python] Sphinx로 문서화하기 (0) | 2023.08.28 |
[virtual environment] 패키지 관리 툴 : pipenv (0) | 2023.08.28 |