关注分享主机优惠活动
国内外VPS云服务器

Docker创建自己的映像并详细解释上传过程(如何创建Docker映像)

在引入和部署毕节服务器时有一个问题:

& emsp& emsp因为在三个服务器之间超集成ovirt -引擎后,需要安装mysql5.7才能在主节点服务器上部署可视化平台,但安装mysql时需要卸载一些依赖项。但由于担心影响原有postgresql数据库和ovirt -引擎的服务组件,我选择用docker容器部署mysql数据库。

& emsp& emsp成功创建容器并配置mysql远程连接后,发现无法通过navicat连接,也无法通过部署mysql8连接。能改的配置文件都改了,路由和端口也打开了,但是不允许。非常怀疑ovirt-engine hyper-fusion的一些设置影响了docker容器与主机的网络通信。

& emsp& emsp后来我创建了一个虚拟机作为mysql服务器。

& emsp& emsp第二天发现docker容器有了主机模式,应该就像直接使用主机的网络和端口。所以我试着在自己公司部署了一下,确实不错。然后就想着直接部署创建自己的形象,以后会更方便。所以有这个调配记录。

了解Docker的资源隔离和主机模式。在这种模式下,dockers容器与主机处于同一网络,但没有独立的IP地址。

Docker使用Linux名称空间技术来隔离资源,例如:

PID命名空间隔离进程挂载命名空间隔离文件系统网络命名空间隔离网络和其他Docker容器一般会分配一个独立的网络命名空间。但是,如果在容器启动时使用主机模式,容器将不会获得独立的网络命名空间,而是与主机共享一个网络命名空间。容器不会虚拟化它自己的网卡,配置它自己的IP,等等。,但使用主机的IP和端口。

创建centos7容器创建mysql数据目录

mk-p/usr/MySQL/数据创建容器

docker run -dit --name MySQL 5.7 --privileged = true -4 --network = host \ -v/usr/MySQL/data:/var/lib/MySQL \ centos:centos 7/usr/sbin/init因为主机模式--network =

进入容器

docker Exec -IT MySQL 5.7/bin/bash安装必要的工具

yum安装-y wget

部署mysql5.7门户

创建码头中心仓库https://hub.docker.com/

登录创建自己的仓库,可以是公有的,也可以是私有的。

Docker创建自己的映像并详细解释上传过程(如何创建Docker映像)-主机频道

注意自己仓库的命名,最好能通过名字知道意思,因为仓库的名字就是背后镜子的名字。

在服务器上登录您的docker。

docker登录

生成镜像创建您自己的镜像

Docker Commit -M "CentOS 7与MySQL 5.7 " -A " Echoo " A3Dee 73 DBA facent 7 SQL:5.7-M描述信息

-a作者信息a3dee73dbafa容器id

7 cent7sql:5.7镜像名称:版本标签

Docker创建自己的映像并详细解释上传过程(如何创建Docker映像)-主机频道

注意:当你登录自己的docker,看图片的时候,你会发现图片名称多了一些东西,比如docker.io/centos. Docker . io这里是Docker Hub的公共用户名,centos是图片仓库的名称。此时,我的图像名称不符合规则。直接推的话会出错。必须按照用户名/仓库名:版本标签等规则命名。这也是为什么你在上面创建仓库的时候,说最好是以名知意。

更改镜像名称(重新标记)

docker标签cent 7 SQL:5.7 echoo 2787/centos 7:SQL 5.7Docker创建自己的映像并详细解释上传过程(如何创建Docker映像)-主机频道

就这么命名吧。

提交Docker Push Echoo 2787/CentOS 7:SQL 5.7这个命令可以在仓库创建后的页面右侧找到。

只需等待推送完成。如果报告拒绝错误,请检查镜像命名是否与要求不一致。

这就是这篇关于Docker创建自己的图像和上传过程的文章。关于Docker创建图像的更多信息,请搜索主机频道zhujipindao之前的文章。或者继续浏览下面的相关文章。希望大家支持主机频道zhujipindao。未来的com!

未经允许不得转载:主机频道 » Docker创建自己的映像并详细解释上传过程(如何创建Docker映像)

评论 抢沙发

评论前必须登录!