Dockerfile打包部署常用操作


1、Dockerfile部署java程序(jar包)

1.1、创建Dockerfile

FROM java:8
MAINTAINER qingsong
VOLUME /home/wqswork/demofirst
ADD summer.jar demo1.jar
EXPOSE 8030
ENTRYPOINT ["java","-jar","demo1.jar"]
# 下面这句话限制容器的内存
#ENTRYPOINT ["/opt/infosec/cssp/jdk1.8.0_202/bin/java","-jar","-Xms1024m", "-Xmx1024m","-XX:+PrintGCDetails", "-XX:+PrintGCTimeStamps", "-XX:+HeapDumpOnOutOfMemoryError", "-XX:HeapDumpPath=/opt/infosec/cssp", "-Xloggc:/opt/infosec/cssp","/opt/infosec/cssp/cssp-csm.jar"]
# 下面这句是运行带配置文件的
#ENTRYPOINT ["java","-jar","demo1.jar", "--spring.profiles.active=dev"]
  • from java:8 拉取一个jdk为1.8的docker image
  • MAINTAINER qingsong 作者是qingsong
  • VOLUME /home/wqswork/demofirst 持久化地址
  • summer.jar 就是你上传的jar包,替换为jar包的名称
  • demo1.jar 是你将该jar包重新命名为什么名称,在容器中运行
  • expose 该容器暴露的端口是多少,就是jar在容器中以多少端口运行
  • entrypoint 容器启动之后执行的命令,java -jar demo1.jar 即启动jar

1.2、将Dockerfile和要上传的jar包放到一个目录下,构建镜像

# 注:一定要加“.”,否则构建失败
docker build -t demo1 .

1.3、创建启动容器

#这个表示docker容器在停止或服务器开机之后会自动重新启动 --restart=always
docker run -d --restart=always --name demotest -p 8040:8030  demo1

2、Dockerfile部署vue

2.1、创建dockerfile文件

#wqs_20210331 dockerfile
#使用 nginx最新版本作为基础镜像
FROM nginx

# 删除原来nginx自带的配置文件
RUN rm -vf /etc/nginx/conf.d/default.conf
# 复制自己写的配置文件
COPY ./conf.d/ /etc/nginx/conf.d/
#将当前文件夹的dist文件复制到容器的/usr/share/nginx/html目录
COPY ./dist /usr/share/nginx/html/

#声明运行时容器暴露的端口(容器提供的服务端口,nginx这里默认式80端口,所以可以注释掉)
#EXPOSE 8080

#CMD:指定容器启动时要运行的命令
CMD ["nginx", "-g", "daemon off;"]

2.2、将打包的dist文件放到dockerfile同文件目录下

2.3、在dockerfile同目录文件下创建目录conf.d,在conf.d下创建web.conf文件

server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    location /api/{
                proxy_pass http://172.17.0.1:7000/;
                proxy_redirect default;
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

2.4、到Dockerfile执行打包镜像命令

  docker build -t my-vue-test .
  # 出现以下描述,构建镜像完成
  Successfully built 1a42038957c7
  Successfully tagged my-vue-test:latest

2.5、创建并运行容器

  docker run -d --restart=always --name myvue01 my-vue-tes
  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

八月林城

如果受益了,请作者喝杯咖啡哟

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值