记录五年社畜萌新尝试将静态网站在docker上使用nginx部署

环境信息

腾讯云Linux CentOs 版本:centos-release-7-9.2009.0.el7.centos.x86_64

Docker版本:Docker version 19.03.13, build 4484c46d9d

直接yum install docker默认的版本是1.13,不知道啥情况,我安装后再更新docker版本的

个人信息

1.Docker萌新

2.完全没有使用过nginx搭建站点(老IIS了)

3.liunx指令基本面向搜索引擎

vue打包后的的文件夹中建立Dockerfile

FROM hub.c.163.com/library/nginx
# RUN echo “Hello Nginx on Docker” > /usr/share/nginx/html/index.html
# 将dist文件中的内容复制到 /usr/share/nginx/html/ 这个目录下面
COPY /  /usr/share/nginx/html/
COPY nginx.conf /etc/nginx/nginx.conf

由于不懂nginx,一开始以为后面两句copy可以忽略,忽略了的确可以正常运行,但是最终出来的页面是nginx默认页面,

Welcome to nginx!

几个大字砸你脸上的那种,让我一脸懵逼

然后就明白了这两个copy的作用

把打包出来的整个目录(包含自己建立的Dockerfile)上传到服务器,方式很多种

我用的是 宝塔SSH 对比过很多常见的SSH,还是这个颜值高用的舒爽,自带一个上传文件功能


然后是CD到服务器上你上传的那个目录下,开始敲命令

docker build -t 镜像名字:标签 .  (←最后有个点) 

*这步应该叫做打包镜像(啥?你问啥是镜像?重装过电脑没?就是你制作启动U盘的环节)

示例:docker build -t nginx_twz:0.3 .

等待打包完成,我dockerfile里用的是国内源,很快就好

然后再敲命令

docker run -p 800:80 --name 容器名  -t 镜像名:标签

*这步应该叫做使用镜像运行一个容器 (啥?你问啥是容器?玩过电脑没?电脑就是容器,现在就是你把U盘插到电脑里装机的环节)

*800内是宿主机的的端口,也就是你实际访问的端口

*80呢就是你这个容器里端口,nginx默认是80

示例:docker run -p 8081:80 --name web1 -t nginx_twz:0.1

好了,到此结束,打完收工,这个时候不出意外访问该8081端口即可看到你网站了

部署其他的也类似,只不过镜像环境不一样

原文地址:https://www.cnblogs.com/ncellit/p/13972063.html