Linux系统上安装docker + Compose并创建WordPress
安装Compose
Docker Compose 是 Docker 官方编排(Orchestration)项目之一, 负责快速在集群中部署分布式应用。
方法一
1、运行此命令下载最新版本的Docker Compose:
[root@] sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
结果:
[root@VM_0_13_centos bin]# sudo curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 617 0 617 0 0 291 0 --:--:-- 0:00:02 --:--:-- 292
100 10.3M 100 10.3M 0 0 406k 0 0:00:26 0:00:26 --:--:-- 1556k
可能会很慢,会超时,多试几次 # 本次尝试7次还是这个方法最靠谱虽然慢了一些
也可以自己去网上找镜像加速下载
2、对二进制文件应用可执行权限
[root@] sudo chmod +x /usr/local/bin/docker-compose
3、测试是否安装成功(两个命令都可以)
[root@] docker-compose --version #查看版本
[root@] docker-compose #查看docker-compose命令的用法
方法二:
使用pip安装
没有python3或pip可参考我另一篇文章
[root@] python3 -m pip install docker-compose #也可能会超时比方法一快些,再试一次基本解决
报错
You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
直接照着提示执行升级命令pip install --upgrade pip
2、测试是否安装成功(两个命令都可以)
[root@] docker-compose --version #查看版本
[root@] docker-compose #查看docker-compose命令的用法
创建WordPress
1、建立应用的目录
[root@] mkdir my_wordpress
[root@] cd my_wordpress
2、创建 docker-compose.yml
[root@] touch docker-compose.yml;vi docker-compose.yml
添加如下内容:
version: '3.3'
services:
db:
image: mysql:5.7
volumes:
- dbdata:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
dbdata:
- images 镜像名
- restart 指定版本
- ports 80为镜像端口, 映射的8000为主机端口。
- environment 环境配置,数据库用户、密码等。
3、建立项目
[root@] docker-compose up -d
可能出现报错1
ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?
If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.
解决办法:
[root@] sudo groupadd docker #创建docker组。
[root@] sudo usermod -aG docker $(whoami) #将用户添加到docker组。
注销并重新登录以确保docker以正确的权限运行。
[root@] sudo service docker restart #重启docker
还是不行? 请确定你是否以root用户登录,一般Ubuntu 用户会遇到此情况
可能出现报错2
the service name True must be a quoted string ,i.e. 'True'.
原因分析:
上面的docker-compose.yml 文件中遗漏了部分内容,如:版本号
再次尝试
镜像原因较慢,可能 timout 再次尝试,本次尝试3次后成功
[root@VM_0_13_centos my_wordpress]# docker-compose up -d
Creating network "my_wordpress_default" with the default driver
Creating volume "my_wordpress_dbdata" with default driver
Pulling db (mysql:5.7)...
5.7: Pulling from library/mysql
f2aa67a397c4: Pull complete
1accf44cb7e0: Pull complete
2d830ea9fa68: Pull complete
740584693b89: Pull complete
4d620357ec48: Pull complete
ac3b7158d73d: Pull complete
a48d784ee503: Pull complete
bf1194add2f3: Pull complete
0e5c74178a02: Pull complete
c1614226503e: Pull complete
0038589109a0: Pull complete
Digest: sha256:e3ce1b609c9275ed24afb3465a9dd73cce38385e64c94755edd5e596a5c1bc8c
Status: Downloaded newer image for mysql:5.7
Pulling wordpress (wordpress:latest)...
latest: Pulling from library/wordpress
f2aa67a397c4: Already exists
c533bdb78a46: Pull complete
65a7293804ac: Pull complete
35a9c1f94aea: Pull complete
651774c607cc: Pull complete
7c01fbe5ed3d: Pull complete
9ff29ed84bfc: Pull complete
647feb0f6355: Pull complete
0b9d1c540863: Pull complete
3416ab5471ed: Pull complete
246c5fc29b1a: Pull complete
547f032430ec: Pull complete
5e139e5ea13c: Pull complete
a94f7c8b762e: Pull complete
34e9c8ec80d7: Pull complete
1e3ee2260fe8: Pull complete
04287c0c64aa: Pull complete
ef94d58d88a0: Pull complete
5368638c2501: Pull complete
5ef154e9a628: Pull complete
Digest: sha256:bd2ee79c6b461aaef56c7dc589d5a8ec9059fa2d01005cbe097e47d943973ca2
Status: Downloaded newer image for wordpress:latest
Creating my_wordpress_db_1 ... done
Creating my_wordpress_wordpress_1 ... done
4、在Web浏览器中访问WordPress
如果是本地服务器,那么你可以使用 http://localhost:8000 访问到如下页面了,如果你是云服务器你可以使用你的公网ip 访问你的应用了,如使用本机浏览器访问公网ip:8000
根据步骤安装和填写信息
以上就完成了,可根据自己的喜好设置主题,加css
如果需要重装要把文件清除干净一点,不然就算是重新拉取镜像再次重装都没效果,如果系统其他应用少考虑直接重装系统
备用安装方法:
备用方法
注意:如果是创建第二台不要和第一台端口一样
Linux系统上安装docker + Compose并创建WordPress的更多相关文章
- Redis进阶实践之二如何在Linux系统上安装安装Redis
一.引言 上一篇文章写了"如何安装VMware Pro虚拟机"和在虚拟机上安装Linux操作系统.那是第一步,有了Linux操作系统,我们才可以在该系统上安装Redis. ...
- Redis进阶实践之二如何在Linux系统上安装安装Redis(转载)(2)
Redis进阶实践之二如何在Linux系统上安装安装Redis 一.引言 上一篇文章写了“如何安装VMware Pro虚拟机”和在虚拟机上安装Linux操作系统.那是第一步,有了Linux操作系统,我 ...
- linux系统上安装java
linux系统上安装java 如何在ubuntu server上安装java(jre或jdk),主要注意以下几点: 1.下载你想要的java版本压缩包. JRE下载:http://java.com ...
- linux系统上安装svn服务器 环境linux+nginx+svnserver
系统:Ubuntu 12.04 64位 lnmp环境 集成软件:PHP5.4.27.Nginx1.6.0.MySQL5.5.37 阿里云server svnserver有2种执行方式:独立server ...
- Linux系统上安装字体
最近项目中需要控制字体类型,然后就上网查了一下在linux系统上安装字体,在window上和linux上,字体要求一样,都是ttf格式,下面这是window上的字体截图 在linux系统中的/usr/ ...
- 【Docker】在Linux系统中安装Docker虚拟机、启动停止重启查看Docker命令
安装Docker 文章目录 安装Docker Docker虚拟机架构 在Linux系统中安装Docker虚拟机 管理Docker虚拟机 参考资料 Docker虚拟机架构 Docker创建的所有虚拟实例 ...
- 在VMware的Linux系统上安装Redis
在VMware的Linux系统上安装Redis 具体过程如下: 下载,解压和编译: 在执行make的时候报错,具体报错信息如下: zmalloc.o: In function `zmalloc_use ...
- 阿里云服务器linux系统上 安装node环境
今天将阿里云服务器重windows系统重置成了linux系统, 点击上面的实例名称,进入到 点击 更换系统盘 选择linux 的centos版本(操作前需要 停止实例) 弄好后,启动实例 下面 ...
- 2300+字!在不同系统上安装Docker!看这一篇文章就够了
辰哥准备出一期在Docker跑Python项目的技术文,比如在Docker跑Django或者Flask的网站.跑爬虫程序等等. 在Docker跑Python程序的时候不会太过于细去讲解Docker的基 ...
随机推荐
- 强大的svg操作库——Raphael
先常规先引入Raphael库: <script src="raphael.js" type="text/javascript"></scrip ...
- UML类关系(依赖,关联,聚合,组合,泛化,实现)
转自https://blog.csdn.net/k346k346/article/details/59582926 在学习面向对象设计时,类关系涉及依赖.关联.聚合.组合和泛化这五种关系,耦合度依 ...
- JS 将字符串数组用 | 或其他符号分割
var arr = ["吕超","赵云","典韦","关羽","马超","张飞" ...
- RocketMQ之消息幂等
幂等(idempotent.idempotence)是一个数学与计算机学概念,常见于抽象代数中. 在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同. 首先我们了解一下什么是 ...
- HashMap分析及散列的冲突处理
1,Hashing过程 像二分查找.AVL树查找,这些查找算法的时间复杂度为O(logn),而对于哈希表而言,我们一般说它的查找时间复杂度为O(1).那它是怎么实现的呢?这就是一个Hashing过程. ...
- JS 互相调用iframe页面中js方法、VUE里 iframe 互调方法
1,父 html 调用子 iframe 内方法: document.getElementById("iframe").contentWindow.func(data1,data2. ...
- 液晶数字显示屏QLCDNumbe
import sys from PyQt5.QtWidgets import QApplication, QWidget, QLCDNumber, QVBoxLayout class Demo(QWi ...
- [C++]Linux之间隔时间内循环执行指定程序
#include<time.h> #include<unistd.h>//usleep(num) #include<stdio.h> #include<std ...
- CSS —— 选择器
选择器种类 标签选择器 id选择器 类选择器 通配符 交集选择器 并集选择器 后代选择器 子代选择器 选择器设置样式优先级 默认样式 < 继承样式 < 通配符设置样式 < 标签选择器 ...
- Node、PHP、Java 和 Go 服务端 I/O 性能PK
http://blog.csdn.net/listen2you/article/details/72935679