docker 制作Eggjs项目镜像,以及上传到Dockerhub

本文详细介绍了如何通过修改package.json文件,并使用Dockerfile创建和运行Docker镜像的过程。涵盖了从环境配置到镜像构建,再到镜像运行和上传的完整流程。适合希望了解Docker镜像制作与部署的开发者。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker镜像的制作

1 修改package.json

{

 

"name": "name",

 

"version": "1.0.0",

 

"description": "描述",

 

"private": true,

 

"dependencies": {

 

"egg": "^2.9.1",

 

"egg-scripts": "^2.6.0"

 

},

 

"devDependencies": {

 

"autod": "^3.0.1",

 

"autod-egg": "^1.1.0",

 

"egg-bin": "^4.7.1",

 

"egg-ci": "^1.8.0",

 

"egg-mock": "^3.17.3",

 

"eslint": "^5.2.0",

 

"eslint-config-egg": "^7.0.0",

 

"webstorm-disable-index": "^1.2.0"

 

},

 

"engines": {

 

"node": ">=8.9.0"

 

},

 

"scripts": {

 

"start": "egg-scripts start --title=egg-server-docker-boilerplate",

 

"startd": "egg-scripts start --daemon --title=egg-server-docker-boilerplate",

 

"stop": "egg-scripts stop --title=egg-server-docker-boilerplate",

 

"dev": "egg-bin dev",

 

"debug": "egg-bin debug",

 

"test": "npm run lint -- --fix && npm run test-local",

 

"test-local": "egg-bin test",

 

"cov": "egg-bin cov",

 

"lint": "eslint .",

 

"ci": "npm run lint && npm run cov",

 

"autod": "autod"

 

},

 

"ci": {

 

"version": "8"

 

},

 

"repository": {

 

"type": "git",

 

"url": ""

 

},

 

"author": "",

 

"license": "MIT"

 

}

 

2 创建Dockerfile 用来创建镜像(注意没有后缀)

FROM node:8.11.3-alpine

ENV TIME_ZONE=Asia/Shanghai

RUN \
  mkdir -p /usr/src/app \
  && apk add --no-cache tzdata \
  && echo "${TIME_ZONE}" > /etc/timezone \ 
  && ln -sf /usr/share/zoneinfo/${TIME_ZONE} /etc/localtime 

WORKDIR /usr/src/app

COPY package.json /usr/src/app/

RUN npm i

# RUN npm i --registry=https://registry.npm.taobao.org

COPY . /usr/src/app

EXPOSE 7008
# 注意端口号的搭配

CMD npm run start


3.创建docker 镜像
Docker build -t node/envp:v1 . 
4.运行镜像
Docker run --name envp -p 7008:7008 -d node/envp:v1

 

Docker 镜像的上传的正确方法
1.Dockerhub上创建仓库
2.Docker tag node/envp:v1 username/envp    本地镜像与dockerhub仓库对应(注意username为你dockerhub上的用户名)
本地镜像    hub仓库      
3.Docker push username/envp    推送镜像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值