ngnix 部署 vue项目-基础篇
标签(空格分隔): docker ngnix vue Dockerfile
目录
- 基础知识
- 主要知识点
###1.基础知识
- image container
- docker 命令 build run rm rmi exec
- Dockerfile
- npm 打包vue项目
###2.主要知识点
- Dockerfile image container 简单来讲,Dockerfile构建出Docker镜像,通过Docker镜像运行Docker容器。
- Dockerfile 包含构建image的指令
#基于centos镜像 FROM centos #引用指定基础镜像
#维护人的信息
MAINTAINER The CentOS Project
#安装httpd软件包 构建image操作
RUN yum -y update
RUN yum -y install httpd
#开启80端口 生命服务端口
EXPOSE 80
#复制网站首页文件至镜像中web站点下
ADD index.html /var/www/html/index.html
#复制该脚本至镜像中,并修改其权限
ADD run.sh /run.sh
RUN chmod 775 /run.sh
#当启动容器时执行的脚本文件
CMD ["/run.sh"]
>生产案例:
#引用指定镜像 可通过 docker images查看本机镜像
FROM harbor.neuqsoft.com/common/nginx:1.15.1
#删除操作
RUN rm /etc/nginx/conf.d/default.conf #注:Dockerfile内所有路径信息均为 docker内部虚拟路径非服务器实际路径
ADD default.conf /etc/nginx/conf.d/
#将当前目录文件复制到docker内部指定虚拟路径
ADD work/nginx/config/nginx/conf.d /etc/nginx/conf.d
ADD work/nginx/config/nginx/sites-enabled /etc/nginx/sites-enabled
ADD work/nginx/config/nginx/nginx.conf /etc/nginx/nginx.conf
COPY dist/ /usr/share/nginx/html/
> * docker build 命令 主要参数 -t -f -t >> * -t 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在一次构建中为一个镜像设置多个标签。 >> * -f 指定要使用的Dockerfile路径; >> * -t 对 Dockerfile 进行语法检查
#docker build 实例 在当前目录下Dockerfile构建一个datashare-test 镜像 注:最后的.不能忘记
docker build -t datashare-test .
#docker build 实例 在指定目录下Dockerfile构建一个datashare-test 镜像
docker build -t datashare-test -f /business/vue/Dockerfile .
> * docker run命令 主要参数 -d -p --name >> * -d 后台运行容器,并返回容器ID >> * -p 指定端口映射,格式为:主机(宿主)端口:容器端口 >> * --name 为容器指定一个名称
docker run -d -p 2080:2080 --name datashare-ui [image name]
> * docker exec命令 主要参数 -i -t
#开启一个伪终端进入docker 容器内部
docker exec -it [docker container name] /bin/bash
> * docker rm rmi ps images 命令
#根据容器名称或id 进行强制删除
docker rm -f [docker container name/id]
#根据镜像名称或id 进行强制删除
docker rmi -f [docker images name/id]
#罗列当前所有容器(包含启动和非启动)
docker ps -a
#批量删除 未启动容器 (已启动容器无法正常删除) -q只显示容器ID。
docker rm $(docker ps -a -q)
#罗列当前所有镜像
docker images -a