Dockerfile的编写以及制作镜像并运行

Docker 制作镜像

编写Dockerfile文件

注意这里传入变量的时候需要先使用ARG定义

# 设备服务Dockerfile示例
FROM openjdk:8-jdk
LABEL MAINTAINER=*

# 定义变量名
ARG NAME
ARG JAR

RUN echo "${JAR}"
RUN echo "${NAME}/xjar /home/${NAME}/xjar"

# 将需要用的文件拷贝到docker中(这里没有用目录挂载)
COPY startup.sh /home/docker/startup.sh
COPY ${NAME}/xjar /home/docker/${NAME}/xjar
COPY ${NAME}/${JAR}  /home/docker/${NAME}/${JAR}

RUN echo "${JAR}"

# 指定工作路径
WORKDIR /home/docker

# 需要执行的指令
ENTRYPOINT ["/home/docker/startup.sh"]

# 通过该方式向上面指令传参
CMD ["arg1","arg2","arg3","arg4","arg5","arg6"]

docker build

制作docker镜像
sudo docker build -t $1:1.0 -f /home/msfw1a/ut/pcmspf-deploy/docker/Dockerfile . --no-cache --build-arg JAR=$jar --build-arg NAME=$1
运行docker
sudo docker run -p $server_port:$server_port $1:1.0 $2 $3 $jar $1 $5 "$4"

其中ENTRYPOINT [“/home/docker/startup.sh”]是重点,ENTRYPOINT 是一个用于指定容器启动时执行的命令的参数。当 Docker 容器启动时,它会执行 ENTRYPOINT 中指定的命令。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值