将java jar包打成docker镜像 然后发送到服务器 利用Dockerfile 服务编排
技术交流群QQ 272712006
- 1.安装docker
// ubuntu
sudo apt-get install docker.io
// centOS
yum install docker.io
- 2.配置远程连接
vi /lib/systemd/system/docker.service
# 修改以ExecStart开头的行:(因为我的系统是centos 7的,所以修改为下面得)
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
# 修改后保存文件,然后通知docker服务做出的修改
systemctl daemon-reload
# 重启docker服务
service docker restart
-
3.配置Dockerfile, 在文件跟目录创建Dockerfile
FROM java
#FROM jrottenberg/ffmpeg
# 将当前目录下的*.jar添加到镜像中去,并且命名为app.jar
ADD target/track-web-exe.jar app.jar
# 开放tcp端口
EXPOSE 8182/tcp
ENV LANG C.UTF-8
# 镜像启动的时候执行这个命令
CMD exec java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app.jar
# 网络 --network cspid_net 172 /Ftpfile/root/:/home 120 /video/root:/home
-
4.idea 连接docker
-
5.打包编译
ps 选择build 此时应发布到服务器上了
- 6.docker-compose安装
docker-compose 地址 https://github.com/docker/compose/releases
找到这两行代码 直接放在服务器上运行就好了
curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
- 7.docker-compose文件编写 创建
docker-compose.yml
# cat docker-compose.yml
version: '2'
services:
config:
image: "cspid-config-server"
# 执行dockerfile
#build: .
networks:
- swarm_net
ports:
- "8988:8888"
restart: "always"
container_name: cspid-config-server
web:
image: "cspid-web"
networks:
- swarm_net
ports:
- "8182:8182"
restart: "always"
container_name: cspid-web
volumes:
- /video/root:/home
depends_on:
- config
networks:
swarm_net:
- 8.运行docker-compose 文件
docker-compose up -d
docker-compose -f docker-compose-cspid.yml up -d
网友评论