
题图:pexels
作者:唱歌不跑调
链接:https://juejin.im/post/6847902216225980430
1. 使用Docker对前端vue项目进行部署
1.1 环境准备
服务器或者虚拟机上先安装好Nginx和相关配置
- docker pull nginx 拉取最新版本的nginx
- 运行nginx, docker run --name=mynginx -d -p 8080:80 nginx
- 然后在服务器安全组或者是防火墙里面开发80端口,在浏览器上输入ip:8080,如果出现这个画面标识nginx 安装成功
1.2 Vue项目准备
- 打包vue项目通过指定 npm run build打包项目生成dist文件夹
- 在项目的根目录创建文件Dockerfile没有文件后缀,文件配置内容如下
# 设置基础镜像,这里使用的是最新版的nginx 步骤1 已经安装了最新的版本FROOM nginx# 定义作者名称 MAINTAINER xiongchao# 将dist文件夹复制到 /usr/share/nginx/html/ 这个目录下面 COPY dist/ /usr/share/nginx/html/
3.上传文件,在服务器上指定的位置创建文件夹(方便自己部署),并将dist文件夹和Dockerfile文件上传至该目录 4.构建镜像 docker build -t myvueproject . 5.通过docker images的方式即可查看 ,改镜像是否构建成功 6.启动镜像docker run --name=dockervue -d -p 8001:8080 myvueproject 7.通过ip:8001的方式进行访问,即可看到项目部署成功
2. 使用Dockerfile为springboot应用构建docker镜像
2.1 Docker常用的指令说明
ADD
用于复制文件
ADD # 实例 将当前目录下的test.jar 复制到docker 容器/目录下面 ADD test.jar /test.jar
ENTRYPOINT
指定docker启动的命令
ENTRYPOINT ["executable", "param","param1"]#示例ENTRYPOINT ["java","-jar","/test.jar"]
ENV
用于设置环境变量 ,格式如下
ENV # 示例 ENV MYSQL_ROOT_PASSWORD root
EXPOSE
声明暴露的端口
EXPOSE #示例 EXPOSE 8080
FROM
指定所需依赖的基础镜像
FROM :# 示例 FROM java:8
MAINTAINER
指定维护者的名字
MAINTAINER #示例 MAINTAINER xiongc
RUN
在容器构建过程中执行的命令, 比如安装其他相关依赖或者是环境所需
RUN <command># 示例 RUN bash -c 'touch /test.jar'
2.2 详细配置文件和说明
FROM java:8ADD test.jar /test.jarRUN bash -c 'touch /test.jar'EXPOSE 8080ENTRYPOINT ['java','-jar','/test.jar']MAINTAINER xiongchao
2.3 开始构建
- 将打包的jar和dockerfile上传至服务器的指定路径
- 构建镜像
# 指定仓库名称/镜像标签 . 标识使用当前目录下的dockerfile文件docker build -t javaproject/javaproject .
3.启动项目
docker run --name=tomcatA01 -d -p 8002:8080 javaproject