Docker源码安装附内网镜像安装演示
2021/8/24 20:07:53
本文主要是介绍Docker源码安装附内网镜像安装演示,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Docker源码安装附内网镜像安装演示
系统版本要求
当前系统版本:CentOS Linux release 7.9.2009 (Core) 内核版本:3.10.0-1160.el7.x86_64 注:系统内核版本要求3.10以上
uname -r #查看当前系统内核版本 cat /etc/redhat-release # 查看当前系统版本 yum update (非正式环境下使用) 版本介绍docker-ce社区版 docker-ee企业版 docker-ce-cli客户端 containerd.io 容器
源码包下载
官网下载地址(https://download.docker.com/linux/static/stable/x86_64/docker-19.03.10.tgz)
我这里已docker-19.03.10.tgz该版本做演示
1.下载源码包文件到本地
2.通过远程连接工具(xShell、SecureCRT等将源码包文件上载到服务器自定义目录)
3.解压文件
pwd /usr/loca/src/ ##自定义文件目录用来存放docker的源码包 tar -zxvf docker-19.03.10.tgz #解压文件 cp docker/* /usr/bin/ #复制解压后文件到/bin(必做)
4.配置docker 为service服务
vi /etc/systemd/system/docker.service 添加如下内容 [Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewall.service Wants=network-online.target [Service] Type=notify #the default is not to use systemd for cgroups because the delegay issues still #exists and systemd currently does not support the cgroup feature set required #for containers run by docker ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID #Having non-zero Limit*s causes performance problems due to accounting overhead #in the kernel. We recommend using cgroups to do container-local accounting. LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity #Uncomment TasksMax if your systemd version supports it. #Only Systemd 226 and above support this version #TasksMax=infinity TimeoutStartSec=0 #set delegate yes so that systemd does not reset the cgroups of docker containers Delegate=yes #kill only the docker process, not all process in the cgroup KillMode=process #restart the docker process if it exits prematurely Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
5.添加可执行权限
chmod +x /etc/systemd/system/docker.service systemctl daemon-reload #重新加载配置(每次修改文件后需执行) systemctl start docker.service systemctl status docker.service systemctl enable docker.service ##使服务开启自启
注:如遇到启动不成功可通过状态查询、/var/log/messages/运行日志或直接使用dockerd命令查看错误信息,如还解决不了建议服务器重启一下在运行docker 启动命令
6.配置镜像加速
vi /etc/docker/daemon.json { "registry-mirrors": ["https://registry.docker-cn.com"] }
systemctl daemon-reload #重新加载配置(每次修改文件后需执行) systemctl restart docker.service
7.检查安装版本
docker version ##或 docker -v
内网下载镜像
注:使用 docker pull 拉取镜像的时候需要网络,但是项目部署一般都是在内网。内网访问不了外网,所以需要在外 网环境下把需要的镜像拉取下来打包,然后拷贝到内网,载入到内网的docker
1.在外网机器上拉取mysql镜像,可以看到外网的docker已经拉取了镜像。
docker pull mysql ##拉取mysql 镜像mysql后不跟版本号默认为最新版本 docker images ## 查看镜像
2.将镜像打包成tar压缩包
docker save -o mysql.tar mysql:latest docker save #容器ID or name 导出镜像
3.将打包好的mysql镜像包通过远程工具下载到本地
4.拷贝到内网linux服务器并载入docker
docker load -i mysql.tar ##导入镜像 docker images
docker基础命令使用(扩展)
下载镜像:(https://hub.docker.com/search/ 官网镜像地址)
docker pull [IMAGE_NAME]:[TAG] #命令格式
docker pull mysql:8.0 #下载mysql8.0镜像(不指定默认下载最新版本)
查看当前镜像版本
docker -v #查看当前安装版本
docker version #查看版本信息
docker info #查看系统信息
docker images #查看当前镜像
docker search 镜像名 #搜索镜像
镜像、容器删除
docker rm 容器ID
docker rm 容器名字
docker rmi 镜像ID
docker rmi 镜像名
docker rmi -f 镜像ID #强制删除
创建网络及数据卷
docker volume create +数据卷名称
docker volume list #查看当前数据卷信息
docker network create -d bridge +网络名称
docker network ls #查看当前网络
docker inspect containername +id # 查看容器的hash值
启动、关闭容器
docker stop $(docker ps -a | awk '{ print $1}' | tail -n +2) #关闭所有容器
docker start $(docker ps -a | awk '{ print $1}' | tail -n +2) #开启所有容器
杂
docker inspect 容器ID (使用该命令重点关注容器ip) ##查看容器/镜像元数据
docker exec ##在运行的容器中执行命令
docker exec -it 容器ID /bin/bash ##以交互模式开启伪终端
这篇关于Docker源码安装附内网镜像安装演示的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14Docker端口:你真的公开了哪些东西?
- 2024-11-14用DOCKER在家里的实验室里搞些酷炫的玩意儿
- 2024-11-05掌握Docker:高效安全的十大最佳实践
- 2024-11-05在 Docker Compose 中怎么设置端口映射-icode9专业技术文章分享
- 2024-11-05在 Docker Compose 中怎么设置环境变量-icode9专业技术文章分享
- 2024-11-04Docker环境部署项目实战:新手入门教程
- 2024-11-04Docker环境部署资料:新手入门教程
- 2024-11-01Docker环境部署教程:新手入门指南
- 2024-11-01超越Docker:苹果芯片上的模拟、编排和虚拟化方案讲解
- 2024-11-01Docker环境部署:新手入门教程