5分钟使用docker搭建一个网站
文章目录
本篇文章录了个配套视频教程, 不想看文字的可以看视频
Youtube: https://youtu.be/1tfyC51CIOs
前言
网上讲搭建一个网站的教程的很多, 如果你是一个爱折腾的人, 完全可以自学搞定. 本篇讲的是一种比较省时省力的方式去搭建一个网站, 以搭建 WordPress 开源博客系统为例.
准备工作
- 购买一台云服务器, 选择 centos 系统
- 域名 (可选项, 可以用服务器 ip 访问)
- ssh 连接工具. linux 和 mac 系统自带, windows系统需要下载相关软件.
流程
这部分是给想了解一下基本流程的人看的, 如果你不关心流程, 只想快速搭建,以下命令已放在 github 上, 可以点我直接跳转去执行总结脚本
-
首先需要安装
docker
, 官方有一键安装脚本, 直接运行即可curl -fsSL https://get.docker.com | sh
然后需要启动 docker 并设定开机自动启动, 就不用每次重启服务器再去手动启动 docker 了
systemctl start docker && systemctl enable docker
-
安装
docker-compose
. 这是一个官方的 docker 辅助工具, 可以根据一个配置文件很容易的创建和修改容器的各种启动参数1 2
curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && \ chmod +x /usr/local/bin/docker-compose
简易脚本
以上流程只是安装并自启动docker和下载一些常用的工具, 我已经写成一个简单的脚本仍在 github 了, 内容基本差不多. –>直达链接
所以你可以直接执行
curl -fsSL https://raw.githubusercontent.com/abcdsxg/Tools/master/shell/docker.sh | sh
和前面讲的流程运行结果是完全一样的. 接下来继续下一步操作
WordPress
有官方的 docker 镜像, 我们只需要拉取镜像并简单的配置就搞定了
拉取镜像的操作是docker pull 镜像名
, 想要其他镜像可以去https://hub.docker.com/ 上搜索
如果使用 docker-compose, 其实上面那一步可以省略, 它会自动根据你的配置文件去拉取镜像. 现在尝试以 docker-compose的方式 编写一个 docker-compose.yaml
文件并启动容器
-
新建一个 docker-compose.yaml文件, 复制以下内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
version: '3.1' services: wordpress: image: wordpress restart: always volumes: - ./website:/var/www/html #你网站上除了数据库外所有的数据,挂载出来方便备份 ports: - 80:80 environment: WORDPRESS_DB_HOST: db #连接数据库的地址,必须要用依赖的服务的名字,这里是 db WORDPRESS_DB_USER: root #你自定义连接数据库的用户名,但需要和下面的mysql设置的要一致 WORDPRESS_DB_PASSWORD: mysqlpass #你自定义连接数据库的密码,但需要和下面的mysql设置的要一致 WORDPRESS_DB_NAME: exampledb #你自定义的数据库名字,但需要和下面的mysql设置的要一致 db: image: mysql:5.7 restart: always volumes: - ./mysql_data/data:/var/lib/mysql #把数据库数据挂载出来方便备份,当然也可以用数据卷的形式(自行学习) environment: MYSQL_DATABASE: exampledb #数据库名字 MYSQL_USER: exampleuser #数据库用户名 MYSQL_ROOT_PASSWORD: mysqlpass #数据库密码
-
执行
docker-compose up -d
启动上面写的两个服务, 如果没有报错就大工告成了, 现在访问你的服务器 ip看看效果吧