./categories/os
Docker 명령어 치트시트
이미지
docker pull nginx
docker pull nginx:stable-perl
docker image ls
docker image rm <ID|name>
docker image rm -f <ID|name>
docker image rm $(docker images -q)
컨테이너
docker create nginx
docker start <name|id>
docker run nginx
docker run -d nginx
docker run -d --name my-web nginx
docker run -d -p 4000:80 nginx
docker ps
docker ps -a
docker stop <name|id>
docker kill <name|id>
docker rm <name|id>
docker rm -f $(docker ps -qa)
docker logs <name|id>
docker logs --tail 10 <name|id>
docker logs -f <name|id>
docker exec -it <name|id> bash
볼륨
docker run -v /host/path:/container/path -d mysql
Dockerfile 예 (Spring Boot)
FROM openjdk:17-jdk
COPY build/libs/*SNAPSHOT.jar app.jar
ENTRYPOINT ["java", "-jar", "/app.jar"]
./gradlew clean build
docker build -t hello-server .
docker run -d -p 8080:8080 hello-server
Compose
docker compose up
docker compose up -d
docker compose up --build -d
docker compose ps
docker compose logs
docker compose pull
docker compose down
Compose 네트워크에서는 DB 호스트를 localhost가 아니라 서비스명으로 (jdbc:mysql://my-db:3306/...).
관련 링크: https://app.notion.com/p/0d7e0652f59141f1bce446f8745a4dc6
./comments