美文网首页
Docker 发布node.js web 项目

Docker 发布node.js web 项目

作者: IT界的古天乐 | 来源:发表于2018-08-01 12:17 被阅读46次

    一:Docker 的准备

    1. 下载 Docker  Mac 版 Docker下载 

    2. 注册Docker的ID 注册DockerID

    docker

    docker -v 查看版本    docker images 查看所有的镜像   

    docker rmi -f a9ae8145f6f2(样例) 强制删除某个镜像

    3. docker 先 pull 拉取一个源镜像 

    docker pull node:8.0.0

    二:创造镜像

    1. cd 到 demo项目的目录

    2. 创建 Dockerfile  

    vi Dockerfile 然后 把下面内容复制进去

     # 指定我们的基础镜像是node,版本是v8.0.0 

    FROM node:8.0.0 

    # 指定制作我们的镜像的联系人信息(镜像创建者) 

    MAINTAINER EOI 

    # 将根目录下的文件都copy到container(运行此镜像的容器)文件系统的app文件夹下 

    ADD . /app/ 

    # cd到app文件夹下 

    WORKDIR /app 

    # 安装项目依赖包 

    RUN npm install 

    RUN npm rebuild node-sass --force 

    # 配置环境变量

    ENV HOST 0.0.0.0 

    ENV PORT 8000

    # 容器对外暴露的端口号 

    EXPOSE 8000 

    # 容器启动时执行的命令,类似npm run start 

    CMD ["npm", "start"]

    3. 在你Dockerfile文件所在的目录下运行下面的命令来构建一个Image. (别忘了最后的的那个点),构建完了可以用docker images查看镜像列表里是否有你建的demo的镜像。

    docker build -t demo .

    三:上传镜像

    1. 登录Dockerhub,在Docker官网创建一个镜像

    1 2

    2.把本地的镜像上传到Dockerhub上创建的那个镜像里,具体步骤:

    (1) 先登录

    > docker loginUsername: XXX

    Password: XXX

    Login Succeeded

    (2) 给本地的镜像打上tag

    docker tag /上传之前必须给镜像打上tag,namespace可以指定为你的docker Id

    2b0082b2**** 是通过docker images 查看镜像的ID,wa**zh**qi** 是dockerhub账户名,wzqdemo0802 是dockerhub上创建的镜像名

    docker tag 2b0082b2**** wa**zh**qi**/wzqdemo0802

    (3) docker push /将镜像上传至docker的公共仓库

    docker push wa**zh**qi**/wzqdemo0802

    四:本地电脑连上服务器,在服务器的docker上 下载dockerhub上你创建的那个镜像。

    运行镜像:

    docker run -d -p 9000:8000 wa**zh*qi*/wzqdemo0802

    run 完以后打开浏览器 输入服务器的ip和9000的端口,就可以查看镜像里的前端项目,局域网内都可以看到。

    另外:打包 tar 既可以通过上传dockerhub,然后服务器通过dockerhub上下载,也可以打包直接拷贝到服务器上

    docker save lzqs/deploy:1.0 > deploy.tar

    然后服务器

    docker load -i deploy.tar

    参考文档:Docker部署基于Node.js的web项目

    相关文章

      网友评论

          本文标题:Docker 发布node.js web 项目

          本文链接:https://www.haomeiwen.com/subject/vrulvftx.html