Docker封装服务器项目全流程。

what什么是docker

Docker是一个开源的软件容器平台,可以让开发人员将应用程序与其所需的环境(如操作系统和依赖项)打包在一起,并将它们部署到任何地方。

why为什么要用docker

部署软件的时候有个很重要的东西就是搭建环境,程序所依赖的东西都要安装好,而docker能很好的解决这个痛点。

用docker就是为了给运维省事了,开发出来的程序,封为docker之后,部署运行就很方便。

how怎么使用docker

接下来我将以我自己一个简单的服务器封装为docker容器并运行的列子,给各位看一下。

dockerfile

# centos镜像名 latest版本号
FROM centos:7 

# 工作目录 /

ADD tts_server.tar.gz /root
WORKDIR /root/tts_server/src

# RUN 加载依赖包 && 再加一条命令  \ 连接符 最后一条不加
RUN yum -y install curl

# ENTRYPOINT 程序卡死 前台程序 ["exe", "param"]
#ENTRYPOINT ["./tts-server","../config/"]
# 开放的端口号
EXPOSE 8080

CMD ["./tts-server","../config/"]

ENV LANG zh_CN.UTF-8



#执行程序,配置文件目录

工作目录这里有细节,ADD这行命令,tts_server.tar.gz将这个压缩包添加到/root中去,并且会自动解压这个压缩包,而这个压缩包也要和dockerfile这个文件在同一级目录下,这样在docker build XXX .(命令的最后一行有个点)的时候能找的要ADD的文件。WORKDIR这行命令也是压缩包解压后的要执行CMD那一级的目录,比如说我的目录是这样的

tts-server在src里,那我的路径就得到/src不能只是/root/tts_server。

RUN到这里,操作系统已经规定好了,需要安装程序需要的环境。

CMD ["./tts-server","../config/"],./tts-server就是要执行的程序,../config

 是我程序需要输入这个配置路径,我把它放在了镜像外面,等到启动镜像的时候直接把路径给它映射一下。这里就是说,一般程序还是需要更改一些config的,所以需要将一些文件放在镜像外面。因为你要更改配置文件的话,如果都封装在镜像里,那么还要重新生成镜像,不如放在外面映射更方便使用。

docker命令

构建镜像:

docker build -t tts_http_server:1.2.0 -f  /home/http__server/Dockerfile .

启动镜像:

docker run -itd -p 8080:8080 -v /home/http__server/config/:/root/tts_server/config/ -v /home/http__server/log/:/root/tts_server/log 377e985cb855

-d为后台启动,会在后台一直保持运行状态。

-p是映射端口,-v是映射路径,格式-v<宿主机目录>:<容器目录>。最后加上镜像id就成功启动辣。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值