写给前端的Docker实战教程
登录VPS服务器,安装 Nginx。因为我是 Ubuntu,所以可以用apt安装。其他 Linux 发行版可以百度下安装方法,通常2行内可以搞定:
此时本地通过浏览器访问 VPS 的公网 IP 可用看到 Nginx 的欢迎页面 然后在 VPS 服务器的/etc/nginx/conf.d/中建立一个vhost.conf文件,配置如下内容:
配置的意思是,监听来自 80 端口的流量,若访问域名是pea3nut.info(替换为你自己的域名),则全部转发到http://127.0.0.1:8082中 配置完成后,重启 Nginx 服务器。若是 Ubuntu 可以使用systemctl restart nginx命令,不同 Linux 发行版稍有不同 配置成功后,访问pea3nut.info会看到和VPS公网IP:8082相同的效果 更新站点而迁移完成 Docker 后,我想改一个错别字的流程变为:
命令还是有些长?我们在下面会进一步优化它 迁移 Nodejs 站点(Express)接下来我们实战迁移一个由 Nodejs 写的 Express SSR 站点
我打算怎么做网站使用 Ejs 模板渲染页面。在没迁移 Docker 之前,若我想更新线上网站中内容时,需要:
稍微有点麻烦,因此我打算这样改:
而这样做的好处是:
实施具体的过程和处理静态站点没有什么特别的区别,无非是:
这次就不重复讲了,具体的配置可以参考项目中的相关文件 Tips: 你可能发现了 Dockerfile 中的ENTRYPOINT命令必须指定一个前台进程。若你的 Nodejs 应用是使用 PM2 进行保活的,你需要替换pm2 start app.js为pm2-docker app.js docker-compose当将 Nodejs 站点迁移完成,我们的 VPS 服务器上已经运行了2个容器。每次镜像更新都要手动的docker container create带一堆参数是比较麻烦的,尤其是当日后容器日益增多的时候。而这时,就轮到docker-compose登场了~ docker-compose 是 Docker 官方提供的一个 Docker 管理工具。若你是通过桌面端的 Docker 安装包安装的 Docker,它是会默认为你安装 docker-compose 的。可以试试如下命令:
如果是在 Linux,可以通过如下命令安装 docker-compose:
docker-compose 和 Docker 差不多,也是只要一份文件就能跑起来。docker-compose 主要的作用就是能够让你不必手敲那么多 Docker 命令 建立一个目录,然后在目录中建立docker-compose.yml,内容如下:
然后在目录中键入如下命令就能将服务跑起来:
(编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |