ubuntu上的docker操作

sudo systemctl start | stop | restrart  docker.service # 开启/关闭/重启 docker服务
sudo docker version # 查看docker版本
sudo systemctl enable docker # 开机自启docker
sudo systemctl disable docker # 关闭开机自启docker
sudo systemctl list-unit-files  # 查看本机上所有自启动服务
sudo systemctl list-unit-files | grep docker # 查看docker服务是否能自启动
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker docker.io # 删除docker
sudo rm -rf /var/lib/docker # 删除运行的临时文件
sudo apt autoremove # 删除相关的依赖包

sudo apt-get install docker-ce docker-ce-cli containerd.io # 安装最新版本的docker-CE和containerd

sudo docker run hello-world # 运行hello-world镜像检查是否安装成功

sudo apt-get update # 升级系统中的软件
sudo apt-get upgrade

之前每次运行 docker 都需要使用 root 权限,使当前用户能够执行 docker

sudo groupadd docker # 创建docker组
sudo usermod -aG docker $USER # 将当前用户加入组

重启服务器即可

# 基础操作
docker pull xxx # 下载(拉取)镜像
docker images # 查看本地的所有镜像
docker rmi -f IMAGE_ID或IMAGE_NAME # 强制删除镜像

# 容器打包成新的镜像
docker commit -m "描述信息" -a "作者信息" 容器id或者名称 打包的镜像名称:标签
docker [container] commit CONTAINER IMAGE_NAME:TAG # 创建某个container的镜像

# 导出和导入镜像
docker save -o ubuntu_20_04.tar ubuntu:20.04 # 将镜像ubuntu:20.04导出到本地文件ubuntu_20_04.tar中
docker load -i ubuntu_20_04.tar # 将镜像ubuntu:20.04从本地文件ubuntu_20_04.tar中加载出来
docker container run -it ubuntu bash # 使用docker在bash上运行ubuntu

docker contianer ls
docker container kill [containerId] # 终止ubuntu镜像(使用镜像ID)
docker build . --tag pyramid # 构建一个pyramid镜像 .表示当前路径
docker run pyramid # 直接运行pyramid
docker run -p 5000:3000 my-app #  将my-app容器中的端口3000映射到本地端口5000
docker search 镜像名称 #搜索镜像
docker pull 镜像名称:版本号 #拉取对应版本的镜像
docker pull 镜像名称 #默认拉取最新的镜像
docker images #查看本地已下载的镜像
docker ps #查看正在运行的容器
docker ps -a #查看所有的容器(包括run、stop、exited状态的)
docker container ls #查看正在运行的容器
docker rm 容器ID #只能删除没有在运行的容器
docker rm -f 容器ID #可以删除正在运行的容器
docker run -p 本地主机端口号:容器服务端口号 --name 容器名字 [-e 配置信息修改] -d 镜像名字 --restart=always
docker start 容器ID #启动容器
docker stop 容器ID #终止容器
docker rmi 镜像名称orID #删除镜像

docker stop $(docker ps -aq) #暂停所有容器
docker rm $(docker ps -aq) # 删除所有容器
docker rmi $(docker images -q) # 删除所有镜像

将运行中的容器设为自启动

# docker update --restart=always 容器名或容器ID
docker update --restart=always <CONTAINER ID>
# 例如将tomcat设为自启动
docker update --restart=always mysql

将自启动的容器取消自启动

# docker update --restart=no 容器名或容器ID
docker update --restart=no <CONTAINER ID>
# 例如取消mysql的自启动
docker update --restart=no tomcat

相关文章