Docker 速查笔记
记录一些 Docker 常用命令。
环境信息
docker -v
docker info
镜像相关命令
docker search <keyword>
docker pull <image-name>[:<tag>]
docker images
docker rmi <image-name>
docker inspect [--type image] <image-name>
容器相关命令
docker run \
[--rm] \
[-d|-it|-itd] \
[--name <container-name>] \
[-p <host-port>:<container-port>] \
[-v <host-dir>:<container-dir>] \
[-e <env-variable>[=<value>]] \
<image-name>[:<tag>] \
[<cmd>] [<args>]
docker ps [-a]
docker stop <container-name>
docker start <container-name>
docker exec -it <container-name> /bin/sh
docker cp <file> <container-name>:<path>
docker logs <container-name>
docker inspect [--type container] <container-name>
docker rm <container-name>
常用镜像部署
MySQL
https://hub.docker.com/_/mysql
docker run -d --name <container-name> -e MYSQL_ROOT_PASSWORD=<password> mysql:8.0
docker run -d --name <container-name> -e MYSQL_ALLOW_EMPTY_PASSWORD=1 mysql:8.0
docker exec -it <container-name> mysql
PostgreSQL
https://hub.docker.com/_/postgres
docker run -d --name <container-name> -e POSTGRES_PASSWORD=<password> postgres:17
docker exec -it <container-name> psql -U postgres
镜像构建相关
https://docs.docker.com/reference/dockerfile
Dockerfile
如下:
# 指定基础镜像
FROM <image-name>[:<tag>]
# 配置环境变量
ENV <var>=<value>
ENV PATH="/some/path:${PATH}"
# 拷贝文件 <file> 到镜像中,目标路径为 <path>
COPY <file> <path>
# 切换工作路径
WORKDIR <path>
# 执行命令
RUN <cmd> [<arg> ...]
RUN mkdir some_dir && tar -zxf some_file.tar.gz -C some_dir
# 指定容器启动时默认执行的命令
ENTRYPOINT <cmd> [<arg> ...]
构建相关命令:
# 构建镜像
docker build -t <image-name> .
# 删除构建缓存
docker builder prune [--all]
Thanks for reading! Read other posts?