Docker/Podman 基础操作

Docker 镜像和容器的基础操作。Podman 用法与其相同,将docker替换为podman即可。

镜像管理

功能 命令 说明
查找镜像 docker search <关键字>
下载镜像 docker pull <镜像名> 镜像名 = 镜像仓库名(用户名/软件名):tag,用户名为library时会省略,tag为latest时可省略
查看镜像 docker image ls 列出的镜像ID是镜像短ID,镜像ID一般使用时最少仅需取开头3、4位,能分辨即可。
删除镜像 docker image rm <镜像名>/<镜像 ID> 别名:docker rmi <镜像名>/<镜像 ID>

容器管理

使用镜像创建容器 - docker run命令

1
docker run [参数] <镜像名>

常用参数:

  • --name xxx :给新容器命名为“xxx”
  • -d :后台运行
  • -i :进行交互式操作
  • -t :分配一个伪终端,一般与i一同使用
  • -p xxxx:xxxx :指定端口映射,格式为“主机端口:容器端口”
  • -e xxx :设置环境变量
  • -v xx:xx :挂载数据卷、主机目录
  • --mount xx=xx,xx=xx :同上

样例:

  • MySQL 5
1
2
3
4
5
docker run -d \
-p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123456 \
--name mysql \
mysql:5
  • PostgreSQL
1
2
3
4
5
docker run -d \
-p 5432:5432 \
-e POSTGRES_PASSWORD=123456 \
--name postgresql \
postgres:alpine

之后操作容器一般使用<容器名>或<容器ID>。容器名可通过--namedocker run时指定,也可由系统自动分配;容器ID同镜像ID一样,最少仅需开头3、4位,能分辨即可。

容器的管理 - docker container命令

docker container 的常用命令一般可以省略container,如docker container start 可以写为 docker start

功能 docker container 命令 别名
查看容器 docker container ls docker ps (使用-a查看所有容器)
启动容器 docker container start <容器名>/<容ID> docker start <容器名>/<容器ID>
重启容器 docker container restart <容器名>/<容ID> docker restart <容器名>/<容器ID>
停止容器 docker container stop <容器名>/<容ID> docker stop <容器名>/<容器ID>
删除容器 docker container rm <容器名>/<容ID> docker rm <容器名>/<容器ID>

进入后台运行的容器

1
docker attach <容器名>/<容器ID>

1
docker exec <容器名>/<容器ID> 命令
  • -it <容器名>/<容器ID> bash :进入容器并启动bash进行交互式操作

推荐exec,退出容器不会停止