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