Docker 运行容器

Last edited
Last updated July 11, 2023
Pages
Tags

启动容器

运行这个镜像:
sudo docker run -it ubuntu:16.04 /bin/bash

映射目录

挂载 ~/host-home 启动:
sudo docker run -it -v ~/:/host-home ubuntu:16.04 /bin/bash

指定 ID

需要指定 ID 的话加上 --name 参数(需要放在前面,不然会作为 bash 的参数)
sudo docker run --name u16 -it -v ~/:/host-home ubuntu:16.04 /bin/bash

指定网络

  • -net=host:使用宿主机网络(拥有宿主机主机名)
  • -net=container:container_id/container_name:共用其他容器网络
  • -net=none:无网络
  • -net=bridge:默认模式,类似虚拟机的 NAT 网络,即在宿主机下虚拟一个子网

指定主机名

  • -cap-add SYS_ADMIN
sudo docker run --cap-add SYS_ADMIN --name u18 -it \ -v ~/:/host-home ubuntu:18.04 /bin/bash

保存为新镜像

docker 默认不保存任何状态,可以通过 commit 来提交当前运行镜像为新镜像:
sudo docker ps [sudo] password for ubuntu: CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES f0ff3838e467 ubuntu:16.04 "/bin/bash" 16 seconds ago Up 15 seconds fervent_blackwell

列出容器

列入包括已经停止的容器需要带上 -a:
sudo docker ps -a

删除容器

删除的方法是:
sudo docker rm [id] # 一口气删除全部 docker rm $(docker ps -aq -f status=exited)

重新连接

重新连接的方法是:
docker start 1234567890ab docker attach 1234567890ab