【实战】制作自定义镜像

制作xnetd镜像

制作its-xnetd:1.0 镜像
ps:xnetd 是我公司的一个自主研发的消息中间件,可以理解为 mq,本文介绍,如何将公司独有的组建放入Docker,制作成镜像。

一、前提说明

1)首先要有xnetd的应用,然后和Dockerfile在同级目录,详情如下:

|- Dockerfile
|- xnetd_bin
    \- start.sh ## 启动xnetd的脚本
    \- .config  ## xnetd相关的配置
    \- xnetd    ## xnetd应用

2) .config 配置

[sds]
Level=5
OnlineCheckSecond=100
OnlineEchoSecond=2
LocalTitle=echo;all
LocalGroup=g1
AutoDisconnect=1
cloud=none
;InitTerm=100
AlwaysAuto=1
CutLength=300
DispLevel=5
LogPath=/root/logs/xnetd

[eops]
Level=5
OnlineCheckSecond=100
OnlineEchoSecond=2
LocalTitle=echo;all
LocalGroup=g1
AutoDisconnect=1
cloud=none
;InitTerm=100
AlwaysAuto=1
CutLength=300
DispLevel=5
LogPath=/root/logs/eops/xnetd

start.sh 配置

/usr/xnetd_bin/xnetd sds 17300
sleep 2
/usr/xnetd_bin/xnetd eops 13300
sleep 2

二、开始制作镜像<font color="red" size="4">(3步)</font>

1)、编写Dockerfile文件

FROM centos:7.4.1708
MAINTAINER Will wangzhenwei@erayt.com

#上传安装xnetd
RUN mkdir  /usr/xnetd_bin
COPY xnetd_bin/xnetd /usr/xnetd_bin/xnetd
COPY xnetd_bin/start.sh /usr/xnetd_bin/start.sh
COPY xnetd_bin/.config /root/.config
RUN mkdir -p /root/logs/eops/xnetd
RUN mkdir /root/logs/xnetd

##开启端口
EXPOSE 13300  17300

#CMD ["/usr/xnetd_bin/start.sh" , "run"]
CMD sh /usr/xnetd_bin/start.sh && tail -f /root/.config

2)、执行build 命令

docker build --rm=true --no-cache=false -t its-xnetd:1.0 .

3)、启动容器

docker run -it -d --name=xnetd  -p 13300:13300 -p 17300:17300 its-xnetd:1.0

<font color="red" size="4">创建完成</font>

三、日志记录

[root@helloword xnetd]# docker build --rm=true --no-cache=false -t its-xnetd:1.0 .
Sending build context to Docker daemon  1.168MB
Step 1/10 : FROM centos:7.4.1708
 ---> 3afd47092a0e
Step 2/10 : MAINTAINER Will wangzhenwei@erayt.com
 ---> Using cache
 ---> 50450d3a273b
Step 3/10 : RUN mkdir  /usr/xnetd_bin
 ---> Running in 584ed0248fd7
 ---> 6607c76ffc46
Removing intermediate container 584ed0248fd7
Step 4/10 : COPY xnetd_bin/xnetd /usr/xnetd_bin/xnetd
 ---> 5e7eb427b545
Step 5/10 : COPY xnetd_bin/start.sh /usr/xnetd_bin/start.sh
 ---> 1bfe9cd23270
Step 6/10 : COPY xnetd_bin/.config /root/.config
 ---> 706607e875ee
Step 7/10 : RUN mkdir -p /root/logs/eops/xnetd
 ---> Running in 87b62ed416a8
 ---> 3b0a05d932ed
Removing intermediate container 87b62ed416a8
Step 8/10 : RUN mkdir /root/logs/xnetd
 ---> Running in ae25536eb944
 ---> ceb1c31910cf
Removing intermediate container ae25536eb944
Step 9/10 : EXPOSE 13300 17300
 ---> Running in 02750787bf3f
 ---> 0e559c595bb1
Removing intermediate container 02750787bf3f
Step 10/10 : CMD sh /usr/xnetd_bin/start.sh && tail -f /root/.config
 ---> Running in b7bfad96acd7
 ---> 1bc3630a75d4
Removing intermediate container b7bfad96acd7
Successfully built 1bc3630a75d4
Successfully tagged xnetd:latest
[root@helloword xnetd]# docker run -it -d --name=xnetd  -p 13300:13300 -p 17300:17300 its-xnetd:1.0
2aa96230ecd3e68d86ec659307c61d1c22001aa2e65a508b96c6d781ed8a477d
[root@helloword xnetd]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                                NAMES
2aa96230ecd3        its-xnetd:1.0               "/bin/sh -c 'sh /u..."   2 seconds ago       Up 1 second         0.0.0.0:13300->13300/tcp, 0.0.0.0:17300->17300/tcp   xnetd
优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/637836

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。