Dockerfile和dockerpush.sh文件

7 篇文章 0 订阅
2 篇文章 0 订阅

文件结构

执行过程

1.首先编写好Dockerfile文件,自定义容器设置

2.使用docker build构建镜像到本地

3.使用dockerpush.sh将本地的镜像上传到云镜像仓库

4.eureka-server.sh执行脚本运行镜像,如果本地没有镜像则会到云镜像仓库上面拉取镜像,然后运行镜像。

一、Dockerfile文件

Dockerfile文件是用来创建镜像的,可以在Dockerfile文件中配置镜像的相关参数,详细介绍

-t镜像的名字及标签,通常 name:tag 或者 name 格式;最后面一个“.”,表示Dockerfile文件

#构建镜像,镜像名为hub.c.163.com/mockup/wangyk/eureka-server:1.0.0
docker build -t hub.c.163.com/mockup/wangyk/eureka-server:1.0.0 .
#制作镜像的文件
#选择一个镜像作为基础镜像
FROM hub.c.163.com/library/java:latest
#镜像的所有者(可以省略)
MAINTAINER wangyk 1416841861@qq.com
#容器运行时监听的端口
EXPOSE 8761
#容器暴露ssh端口
EXPOSE 22
#修改docker的时区,docker的时区默认为utc,与北京时间相差8小时
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
#将jar包放入容器中,ADD target/*.jar eureka-server.jar
ADD eureka-server-1.0.0.jar eureka-server.jar
#运行jar
ENTRYPOINT  java -Djava.security.egd=file:/dev/./urandom  -Xms64m -Xmx64m -XX:MetaspaceSize=64M -XX:MaxMetaspaceSize=64M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/javadump -jar /eureka-server.jar

Dockerfile文件的指令集,不区分大小写

  1. FROM:用于指定基础镜像
  2. MAINTAINER:维护者的信息
  3. COPY:复制文件到镜像(相对路径为Dockerfile)
  4. WORKDIR:设置当前工作路径,可设置多次,配合ADD,RUN,ENTRYPOINT使用
  5. RUN:用于容器内部执行命令
  6. EXPOSE:指定对外开发的端口
  7. ADD:添加文件到容器
  8. ENTRYPOINT:ENTRYPOINT ["executable", "param1", "param2"] 执行命令。只能有一个,最后一个生效
  9. CMD:CMD ["executable","param1","param2"]。启动程序默认执行的命令

二、dockerpush.sh文件

将Dockerfile制作好的镜像文件上传至镜像仓库,c.163.com(网易云镜像仓库),hub.docker.com(国外镜像仓库)

#!/bin/bash
#首先需要登录账号
sudo docker login --username=wangyk--password=wangyk hub.c.163.com
#$1是传入的版本号参数,然后将本地的镜像上传到网易云镜像仓库
sudo docker push hub.c.163.com/mockup/wangyk/eureka-server:$1

三、eureka-server.sh文件,写成脚本便于运行

用来运行镜像

docker rm -f hub.c.163.com/mockup/wangyk/eureka-server
docker rmi -f hub.c.163.com/mockup/wangyk/eureka-server:1.0.0
docker run -p 8761:8761 --name eureka-server-v /usr/local/logs/:/var/log/lang/ hub.c.163.com/mockup/wangyk/eureka-server:1.0.0 -d

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值