业务场景: 需要将本地前端代码推送到远程镜像仓库
1.将前端代码www包解压后放在本地临时目录,然后创建一个dockerfile
FROM treehouses/pm2 WORKDIR /www COPY www/ /www RUN npm install EXPOSE 30000 ENTRYPOINT ["pm2","start"]
FROM treehouses/pm2 根据treehouses/pm2构建镜像 如果是后端项目这里可以换成java:8
WORKDIR /www 表明工作目录
COPY www/ /www 将本地目录中www/ 复制到镜像的/www
RUN npm install 执行打包命令
EXPOSE 30000 暴露端口30000
ENTRYPOINT ["pm2","start"] 启动命令
ps: 这里是启动后端springboot项目的一个简单dockerfile
###指定java8环境镜像 FROM java:8 ###复制文件到容器eureka.jar ADD -eurekaserver.jar /eureka.jar ###声明启动端口号 EXPOSE 8100 ###配置容器启动后执行的命令 ENTRYPOINT ["java","-jar","/eureka.jar"]
2.登陆自己远程仓库
docker login --username=zhangsan xxx.aliyuncs.com
username表示登陆用户名
xxx.aliyuncs.com表示远程仓库地址
登陆后输入密码 回车没有任何输出则表示成功
3.构建镜像
cd 到dockerfile目录
执行docker build -t qianduan .
则会生成镜像名称为xxx 版本号为latest的一个镜像
-t表示生成的镜像名称和版本号
4.给镜像打tag
Docker images
命令格式: docker tag [镜像id] registry.cn-hangzhou.aliyuncs.com/[镜像名称]:[镜像版本号]
docker tag 12123211 xxx.aliyuncs.com/test/qianduan
不加版本号则为最新版本
5.推送镜像到远程仓库
命令格式: docker push registry.cn-hangzhou.aliyuncs.com/[镜像名称]:[镜像版本号]
docker push xxx.aliyuncs.com/test/qianduan
觉得有用点个关注支持下吧,gzh->JavaNice
java Nice哥,只做原创