vue部署docker

拉取nginx镜像

docker pull nginx

有Dockerfile文件步骤:

1、打包vue

npm run build

2、写一个default.conf 文件,替换镜像中的conf文件

server {
listen 8031;# 配置端口
server_name 0.0.0.0; # 修改为docker服务宿主机的ip location / {
root /usr/share/nginx/html;
index index.html index.htm;
try_files $uri $uri/ /index.html =404;
} error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}

3、写一个Dockerfile文件

FROM nginx 

MAINTAINER zy

COPY dist/  /usr/share/nginx/html/

COPY default.conf  /etc/nginx/conf.d/default.conf

4、把dist、Dockerfile、default.conf文件上传到服务器,目录如下:

5、ok,完成前面的步骤就可以进入服务器控制台了,创建容器

docker build -t 镜像别名 .(注意这是个点,不要忘记了)

6、然后运行容器

docker run -d -p 端口:端口 --name 镜像名称 镜像别名

7、部署完成,这是有Dockerfile文件的情况下。

没有Dockerfile文件的步骤

1、进入工作目录

cd /usr/local/docker/nginx

如果不存在,则创建

mkdir -p /usr/local/docker/nginx

在工作目录下一次创建html、conf两个文件夹

mkdir -p html etc

2、创建临时容器

docker run --name temp -p 80:80 -v /usr/local/docker/nginx/html:/usr/share/nginx/html  -d nginx

参数详解:

-p 80:80:将容器的 80端口映射到主机的 80端口,第一个是主机端口,第二个是容器端口。

--name 容器名字 可以随便自定义哦!

-v /usr/local/docker/nginx/html:/usr/share/nginx/html:将主机当前目录下的 html目录挂载到容器的 /usr/share/nginx/html。

-d 后台启动

nginx 启动的镜像的名字

3、nginx配置文件

将nginx容器中的配置文件所在的目录下的文件内容拷贝到宿主机中,让这两个目录的原始内容先保持一致

 docker cp 容器id:/etc/nginx /usr/local/docker/nginx/etc

将拷贝出来的文件搬家一下

mv nginx/* /usr/local/docker/nginx/etc

我们能在主机的etc目录下看到拷贝的文件,在conf.d文件夹中查看到default.conf文件

4、删除创建的临时容器

//停止容器
docker stop 容器名称
//删除容器
docker rm 容器名称

5、修改default.conf文件

cd /usr/local/docker/nginx/etc/conf.d
vim default.conf

按insert键,进入编辑模式,根据需要自己修改调整

修改完,按esc键 ,再按: ,最后输入wq,保存退出

6、创建容器

docker run --restart=always --name nginx -p 80:80  -v /usr/local/docker/nginx/html:/usr/share/nginx/html -v /usr/local/docker/nginx/etc:/etc/nginx -d  nginx

参数详解:

-p 80:80:将容器的 80端口映射到主机的 80端口,第一个是主机端口,第二个是容器端口。

--restart=always 自动启动容器

--name 容器名字 可以随便自定义哦!

-v /usr/local/docker/nginx/html:/usr/share/nginx/html:将主机当前目录下的 html目录挂载到容器的 /usr/share/nginx/html。

-v /usr/local/docker/nginx/etc:/etc/nginx:将主机当前目录下的 etc目录挂载到容器的 /etc/nginx。

-d 后台启动

nginx 启动的镜像的名字

7、上传vue文件

将生成文件拷贝到 /usr/local/docker/nginx/html

8、重启容器

docker restart  nginx

这个没有Dockerfile的步骤转载于:

原文链接:https://blog.csdn.net/yanguan025/article/details/127551578

记录一次vue部署docker步骤的更多相关文章

  1. Linux下部署docker记录(0)-基础环境安装

    以下是centos系统安装docker的操作记录 1)第一种方法:采用系统自带的docker安装,但是这一般都不是最新版的docker安装epel源[root@docker-server ~]# wg ...

  2. 记录Linux CentOS 7系统完整部署Docker容器环境教程

    笔者之前有在"详细介绍Ubuntu 16.04系统环境安装Docker CE容器的过程"文章中有介绍到利用Ubuntu系统安装Docker容器环境的过程.如果我们有使用CentOS ...

  3. 局域网内部署 Docker Registry

    在局域网内部署 Docker Registry 可以极大的提升平时 pull.push 镜像的速度,从而缩短自动化操作的过程.同时也可以缓解带宽不足的问题,真是一举多得.本文将从创建单机的 Docke ...

  4. 在windows下使用jenkins部署docker容器

    在windows下使用jenkins部署docker容器最近在学习jenkins,docker部署来实现集成部署,所以想在windows下面实现测试,但是发现在windows下docker支持不是很好 ...

  5. centos7 部署 docker ce

    =============================================== 2019/4/9_第1次修改                       ccb_warlock === ...

  6. centos7 部署 docker、shipyard

    =============================================== 2019/4/9_第3次修改                       ccb_warlock 更新说 ...

  7. centos7 部署 docker swarm

    =============================================== 2019/4/9_第3次修改                       ccb_warlock 更新说 ...

  8. 从零开始安装、编译、部署 Docker

    简介 主要介绍如何从基础系统debian部署docker关于docker基础知识在 相关资料 里有链接 安装docker 1.使用root用户身份添加apt源添加public key使docker的安 ...

  9. SpringBoot 部署 docker 打包镜像

    SpringBoot 部署 docker 打包镜像 环境: 1.代码编写工具:IDEA 2.打包:maven 3.docker 4.linux 7.JDK1.8 8.Xshell 9.Xftp 第一步 ...

  10. 阿里云部署Docker(2)

    之前有一篇文章讲过在阿里云中安装Docker,相对来说那个是安装.可是安装完之后我们通常会碰到问题. 今天我给大家记录一下我的新的解决过程. 环境还是ubuntu12.04.如果我们已经把内核升级到了 ...

随机推荐

  1. chronyd为隔离网络设置时间同步

    参考链接:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/configuring_basic ...

  2. 【深入浅出 Yarn 架构与实现】3-3 Yarn Application Master 编写

    本篇文章继续介绍 Yarn Application 中 ApplicationMaster 部分的编写方法. 一.Application Master 编写方法 上一节讲了 Client 提交任务给 ...

  3. 初探Java安全之JavaAgent

    About Java Agent Java Agent的出现 在JDK1.5版本开始,Java增加了Instrumentation(Java Agent API)和JVMTI(JVM Tool Int ...

  4. NLP手札1. 金融信息负面及主体判定方案梳理&代码实现

    这个系列会针对NLP比赛,经典问题的解决方案进行梳理并给出代码复现~也算是找个理由把代码从TF搬运到torch.Chapter1是CCF BDC2019的赛题:金融信息负面及主体判定,属于实体关联的情 ...

  5. GeoServer 2.15.0 开启跨域设置

    GeoServe老版本可能开启跨域设置比较麻烦,但2.15.0版本还是比较简单的. 首先找到安装目录下的 webapps\geoserver\WEB-INF\web.xml 文件,打开进行编辑,建议编 ...

  6. day10 集合——队列(Queue)、Vector & Map集合常用方法 & HashMap的实现原理&二叉树&二叉查找树AVL树&红黑树

    集合--List 栈先进后出 队列 先进先出 Queue队列 方法 Queue<Integer> q = new LinkedList<>(); //添加元素 q.add(2) ...

  7. 用 Java?试试国产框架 Solon v1.11.5(带视频)

    一个更现代感的 Java 应用开发框架:更快.更小.更自由.没有 Spring,没有 Servlet,没有 JavaEE:独立的轻量生态.主框架仅 0.1 MB. @Controller public ...

  8. Linux基础第五章 进程控制

    5.2 fork fork函数实现进程复制,类似于动物界的单性繁殖,fork函数直接创建一个子进程.这是Linux创建进程最常用的方法.在这一小节中,子进程概念指fork产生的进程,父进程指主动调用f ...

  9. 从一道CTF题学习python字节码到源码逆向

    概述: 该题来源为2022爱春秋冬季赛ezpython,难度不是很大刚好适合我这样的萌新入门 题目: 3 0 LOAD_CONST 1 (204) 3 LOAD_CONST 2 (141) 6 LOA ...

  10. 在生产中部署 ES2015+ 代码

    大多数 Web 开发人员都喜欢编写具有所有最新语言特性的 JavaScript--async/await.类.箭头函数等.然而,尽管事实上所有现代浏览器都可以运行 ES2015+ 代码并原生支持我刚才 ...