docker

一、安装

官方帮助文档: https://docs.docker.com/reference/

yum安装: yum -y install docker

rpm安装:

https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

找到最新的rpm包,然后:yum -y install docker-ce-20.10.19-3.el7.x86_64.rpm

运行docker:systemctl start docker

二进制安装:

https://download.docker.com/linux/static/stable/x86_64/

找到最新包并且下载

解压:tar -zxvf docker-20.10.3.tgz

进入解压的目录中:cp docker/* /usr/bin/

运行docker:systemctl start docker

其他安装

1)把docker dockerd docker-init docker-proxy放至/usr/local/bin/

2)把containerd containerd-shim containerd-shim-runc-v2放至/usr/local/bin/

3)拷贝至指定位置

/usr/lib/systemd/system/docker.service

/usr/lib/systemd/system/containerd.service

4)yum install systemd-*

5)systemctl start docker

systemctl start containerd

设置docker开机启动

/lib/systemd/system/docker.socket

/lib/systemd/system/containerd.service

groupadd docker

二、镜像操作

docker imags -a查看镜像

docker load <镜像包>

docker rmi <镜像名或ID>

docker pull 拉取镜像

docker images 列出镜像列表

docker container ls 效果同ps命令(加-a效果同)

docker rmi 删除镜像

docker search 从Docker Hub查找镜像

三、容器操作

容器启动

docker run -dit --name=test01(容器名) --privileged --net=host -v /mnt/data:/mnt/data centos7(镜像名) /bin/bash

--net=host 共用宿主机网络

-v 挂载宿主机磁盘,多个盘指定多个-v

--privileged 开启容器权限,允许后台进程运行

容器启动

docker start <容器名或ID>

docker stop <容器名或ID>

docker restart <容器名或ID>

容器使用

docker exec -it <容器名或ID> /bin/bash

docker cp <文件> <容器名或ID>:<路径> 容器与主机之间的数据拷贝

docker rm 删除容器

docker ps 查看正在运行的容器

docker ps -a 查看所有已经创建的容器

docker exec 在运行的容器中执行命令

docker run 创建一个新的容器并运行一个命令

docker info 查看docker系统信息

docker version 显示 Docker 版本信息

docker logs

docker inspect

docker systemctl prune

四、容器迁移

docker运维迁移

指定容器打镜像(10.244.xx.60节点上)

docker commit e88fe8962a5d my_docker_test_6:latest

保存镜像为tar包 (10.244.xx.60节点上)

docker save -o dockertest.tar my_docker_test_6:latest

加载镜像(10.244.xx.60节点上)

export DOCKER_HOST=10.244.xx.61;docker load -i dockertest.tar

启动容器(10.244.xx.61节点上)

docker run --name dockertest --net=host --privileged -itd my_docker_test_6:latest bash

chmod 777 prometheus-1608.tar

docker import prometheus-1608.tar

docker images -a

docker tag 8f4818478567 myprometheus:v1.2.1

docker images -a

docker run --name my-prometheus-v1.2.1 --net=host --privileged -itd myprometheus:v1.2.1 /bin/bash

五、清理环境

1,停止所有容器

docker stop $(docker ps -a -q)

  1. 删除所有镜像

docker system prune --all --force --volumes

  1. 停止容器服务

systemctl stop docker

systemctl disable docker

rm -rf /lib/systemd/system/docker.service

rm -rf /lib/systemd/system/docker.socket

rm -rf /lib/systemd/system/containerd.service

rm -rf /usr/local/bin/containerd*

rm -rf /usr/local/bin/docker*

rm -rf /usr/local/bin/ctr

rm -rf /usr/local/bin/runc

rm -rf /etc/docker

systemctl daemon-reload

相关推荐
__lll_10 小时前
手把手教你用 Docker 部署 Vue 项目(含国内镜像加速 + 踩坑指南)
docker
程思扬17 小时前
Nextcloud容器化部署革新:Docker+Cpolar构建高效私有云远程访问新架构
docker·容器·架构
豆芽脚脚19 小时前
docker compose再阿里云上无法使用的问题
阿里云·docker·容器
十行代码九行报错21 小时前
Docker基础学习笔记
笔记·学习·docker
Agome991 天前
Docker之自定义jkd镜像上传阿里云
阿里云·docker·容器
无能百分百1 天前
阿里云服务器ECS安装Docker(CentOS 7.x)
docker
天上掉下来个程小白2 天前
Docker-14.项目部署-DockerCompose
运维·docker·微服务·容器
星霜笔记2 天前
Docker 部署 MariaDB+phpMyAdmin+Nextcloud 完整教程
运维·数据库·docker·容器·mariadb
数据知道2 天前
容器化部署:用Docker封装机器翻译模型与服务详解
docker·容器·机器翻译
敲上瘾2 天前
Linux系统cgroups资源精细化控制基础
linux·测试工具·docker·压力测试·cgroups