我想把一个网页https://yeasy.gitbook.io/docker_practice
使用docker部署到我的阿里云轻量化服务器,有没有什么好的办法,或者教程,越详细越好
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
将《Docker — 从入门到实战》(yeasy.gitbook.io/docker_practice) 部署到阿里云轻量应用服务器是一个非常好的练手项目。 由于该书是开源的,且作者已经提供了完整的 Docker 化支持,你可以通过以下几种方式进行部署。我推荐你使用 Docker Compose 方式,因为它最稳定且方便后续更新。 前置准备 * 阿里云服务器准备:确保你的轻量应用服务器已开通,建议系统镜像选择 Ubuntu 22.04 或 CentOS 7.9/8。 * 开放端口:在阿里云控制台 -> 轻量应用服务器 -> 详情 -> 防火墙 中,添加规则开放 80 端口(或者你打算使用的其他端口,如 4000)。 第一步:安装 Docker 环境 如果你服务器上还没安装 Docker,请先执行以下命令(以 Ubuntu 为例): # 更新系统 sudo apt-get update
# 安装 Docker curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
# 启动 Docker 并设置开机自启 sudo systemctl start docker sudo systemctl enable docker
# 安装 Docker Compose (新版 Docker 已包含,可通过 docker compose version 查看)
第二步:部署 Docker Practice 这里有两种具体的部署方案: 方案 A:直接运行作者预构建的镜像(最快) 作者维护了一个自动更新的 Docker 镜像,你一行命令就能跑起来。 docker run -d
--name docker_practice
--restart always
-p 80:80
yeasy/docker_practice
参数解释:-d 后台运行;--name 容器命名;-p 80:80 将服务器的 80 端口映射到容器的 80 端口。 方案 B:通过源码部署(推荐,可以学习 Dockerfile) 这种方式可以让你看到书稿是如何从 Markdown 编译成静态网页的。 * 克隆代码仓库 git clone https://github.com/yeasy/docker_practice.git cd docker_practice
* 使用 Docker Compose 启动 仓库里已经写好了 docker-compose.yml,直接运行: docker compose up -d
* 查看运行状态 docker ps
你应该能看到一个名为 docker_practice 的容器正在运行。 第三步:配置阿里云防火墙(关键) 很多新手部署成功但打不开网页,通常是因为阿里云的云端防火墙没开: * 登录 阿里云轻量应用服务器控制台。 * 点击你的服务器实例。 * 在左侧菜单点击 安全 -> 防火墙。 * 点击 添加规则: * 协议:TCP * 端口范围:80 * 源地址:0.0.0.0/0(表示允许所有人访问) * 点击确定。 第四步:访问测试 打开浏览器,在地址栏输入: http://你的服务器公网IP 你应该就能看到和 yeasy.gitbook.io 一模一样的中文 Docker 教程界面了。 进阶:如何更新内容? 由于这本书经常更新,如果你想获取最新内容,只需: * 进入目录:cd docker_practice * 拉取最新代码:git pull * 重新构建并运行: docker compose up -d --build
总结建议 * 如果你只是想看书:用 方案 A,30秒搞定。 * 如果你想顺便学习 Docker 部署流程:用 方案 B。 * 注意安全:如果你的服务器配置较低(如 1核1G),建议不要同时运行太多容器,否则可能会因为内存不足导致宕机。
阿里云拥有国内全面的云原生产品技术以及大规模的云原生应用实践,通过全面容器化、核心技术互联网化、应用 Serverless 化三大范式,助力制造业企业高效上云,实现系统稳定、应用敏捷智能。拥抱云原生,让创新无处不在。