2021-04-23docker综合实践

task6 docker综合实践


学习目的
通过docker将个人项目修改为容器化部署的形式,实现CI/CD功能。
CI/CD:
持续集成Continuous Integration
持续交付continuous delivery
工厂里的装配线以快速、自动化、可重复的方式从原材料生产出消费品。同样,软件交付管道以快速、自动化和可重复的方式从源代码生成发布版本。如何完成这项工作的总体设计称为“持续交付”(CD)。启动装配线的过程称为“持续集成”(CI)。

挂载部署

1.jar包上传到服务器的指定目录,如/root/docker/jar
命令:
cd 进入目录
pwd查看当前目录
ls列出文件名
2.通过docker pull openjdk:8获取镜像

$ docker pull openjdk:8
8: Pulling from library/openjdk
bd8f6a7501cc: Already exists 
44718e6d535d: Already exists 
efe9738af0cb: Already exists 
f37aabde37b8: Already exists 
b87fc504233c: Pull complete 
cc62143cb8cc: Pull complete 
646a47c88e43: Pull complete 
Digest: sha256:9c973bec7c011abcd4c64c5d8601073d26c9d6dd17ca58ea0df5cda98f0e5b05
Status: Downloaded newer image for openjdk:8
docker.io/library/openjdk:8

3.编写docker-compose.yml文件
build 指定dockerfile所在文件夹的路径 context指定dockerfile文件所在路径 dockerfile指定文件的具体名称
container_name 指定容器名称
volumes 挂载路径 z是用来设置selinux,或者直接在linux通过命令临时关闭或者永久关闭
ports 暴露端口信息
networks是用来给容器设置固定的ip
4.执行docker-compose up -d启动jar包
5.docker ps查看
6.docker logs查看日志
docker logs [OPTIONS] CONTAINER
7.docker inspect container查看详细信息
8.在browser中输入jar包项目的访问地址,就可以看到运行的项目

构建镜像部署

1.将jar包上传到服务器的指定目录,比如/root/docker/jar。
2.在该目录下创建Dockerfile文件(touch dockerfile),通过vim等编辑工具在Dockerfile中编辑以下内容

FROM java:8
MAINTAINER YHF
LABEL description=”learn docker”
ADD xxx.jar
EXPOSE 8001
ENTRYPOINT [“java”,-jar”,”xxxx.jar”]

FROM java:8 指定所创建镜像的基础镜像

MAINTAINER yhf 指定作者为yhf

LABEL 为生成的镜像添加元数据标签信息

ADD xxxx.jar 添加内容到镜像

EXPOSE 8080 声明镜像内服务监听的端口

ENTRYPOINT 指定镜像的默认入口命令,支持两种格式ENTRYPOINT[“java”,”-jar”,”xxxx.jar”];ENTRYPOINT java –jar xxxx.jar。注意每个dokcerfile中只能有一个ENTRYPOINT,如果指定多个只有最后一个生效。
3.docker build构建镜像
4.编写docker-compose.yml文件
5.执行docker-compose up –d直接启动基于文件构建的自定义镜像
重构镜像:docker-compose build
6.docker ps查看

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值