# docker 初探01-安装MySQL和wordpress
2017-04-04 15:50
363 查看
docker 初探 读书笔记 《docker 经典实例》
安装脚本:
参加网站:https://www.daocloud.io/mirror#accelerator-doc
修正脚本:
或者配置阿里的镜像加速器也可以(前提也需要注册阿里云的账户哎):
配置工作就完成了,是不是很简单。下面开始一些实例:
backup:
通过Docker-Compose用户可以很容易地用一个配置文件定义一个多容器的应用,然后使用一条指令安装这个应用的所有依赖,完成构建。Docker-Compose解决了容器与容器之间如何管理编排的问题。
安装
因为众所周知的原因,在国内访问某些网站的时候体验非常不好,所以docker安装源建议采用本地的安装包。daocloud.io这个公司做了dockerhub的镜像。安装脚本:
curl -sSL https://get.daocloud.io/docker | sh
修改镜像源
这儿比较麻烦的是,需要从上面的那个网站注册一个账号,才能获得一个加速地址参加网站:https://www.daocloud.io/mirror#accelerator-doc
修正脚本:
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://5403ff34.m.daocloud.io
或者配置阿里的镜像加速器也可以(前提也需要注册阿里云的账户哎):
#您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器: sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://etycivjq.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
配置工作就完成了,是不是很简单。下面开始一些实例:
docker搭建一个worldpress网站
传统的搭建可能比较费时,先配置MySQL数据库,然后配置Nginx或者Apache,然后下载安装文件,进行安装。老司机的话估计也得半个小时,如果用docker的化,不到十分钟就搞定。下载worldpress、MySQL镜像
[root@#localhost ~]# docker pull wordpress:latest latest: Pulling from library/wordpress 6d827a3ef358: Pull complete 87fe8fbc743a: Pull complete f6d1a8d304ab: Pull complete caf3547d9b73: Pull complete 1004db2760ff: Pull complete 66e2d66a547e: Pull complete bbfaa62c234a: Pull complete 19ce8807f4d1: Pull complete 65dc0142d59b: Pull complete a95f4fa43ae2: Pull complete f4edd48c3730: Pull complete d58fc629c9d1: Pull complete c75a71ebb7f4: Pull complete 92667bd16dd2: Pull complete 158b965a06fc: Pull complete cdbb556ec528: Pull complete 79dd5209b5a0: Pull complete c390e42be10f: Pull complete Digest: sha256:980dcdf0c66aa863f309f1d2bb618f4981dcb926a43bc0f65f5d2a0c3be81149 Status: Downloaded newer image for wordpress:latest [root@#localhost ~]# docker pull mysql:latest latest: Pulling from library/mysql 6d827a3ef358: Already exists ed0929eb7dfe: Pull complete 03f348dc3b9d: Pull complete fd337761ca76: Pull complete 7e6cc16d464a: Pull complete ca3d380bc018: Pull complete 3fe11378d5c0: Pull complete 2b5dfd325645: Pull complete b54281d17fbe: Pull complete 7eae4db8eea5: Pull complete 76cf68e17b09: Pull complete Digest: sha256:49b7d6d8d45f8c3300cba056e8cdf36c714d99e0b40f7005b9e6e75e64ecdf7c Status: Downloaded newer image for mysql:latest
进行配置
#数据库安装配置 [root@#localhost ~]# docker run --name mysqlwp -e MYSQL_ROOT_PASSWORD=wordpressdocker -d mysql a57a3cc492b7df62c3ae84b0297f272408f6a0b25b084c3545a58e49f76f6f45 [root@#localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES a57a3cc492b7 mysql "docker-entrypoint..." About a minute ago Up About a minute 3306/tcp mysqlwp #配置WordPress和MySQL的链接,用了docker的--link技术 [root@#localhost ~]# docker run --name wordpress --link mysqlwp:mysql -p 80:80 -d wordpress 81a879a36bd3de6df0427060f06fd710b1cdfd9647992216eec937749d13e968 #查看进程 [root@#localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 81a879a36bd3 wordpress "docker-entrypoint..." 28 seconds ago Up 26 seconds 0.0.0.0:80->80/tcp wordpress a57a3cc492b7 mysql "docker-entrypoint..." 2 minutes ago Up 2 minutes 3306/tcp mysqlwp #打开浏览器进行配置
个性化配置
前面安装MySQL的时候用了默认的root用户,生产环境不推荐这样做。下面的例子是创建个性化的数据库。MySQL
个性安装:docker run --name mysqlwp -e MYSQL_ROOT_PASSWORD=mypass \ #配置root密码 -e MYSQL_DATABASE=mydbname \ #数据库名称 -e MYSQL_USER=mymuser \ #数据库用户 -e MYSQL_PASSWORD=mypass_myuser \ #数据库库用户的密码 -d mysql #以守护进程的方式进行运行mysql #将宿主机的文件夹绑定到容器中的文件夹上 docker run --name mysqlwp -e MYSQL_ROOT_PASSWORD=mypass \ #配置root密码 -e MYSQL_DATABASE=mydbname \ #数据库名称 -e MYSQL_USER=mymuser \ #数据库用户 -e MYSQL_PASSWORD=mypass_myuser \ #数据库库用户的密码 -v /home/docker/mysql:/var/lib/mysql \ #宿主机的/home/docker/mysql文件夹对应容器中后者文件夹 -d mysql #以守护进程的方式进行运行mysql
backup:
[root@#localhost ~]# docker exec -it mysqlwp mysqldump --all-databases --password=wordpressdocker > wordpress.backup [root@#localhost ~]# ll total 3824 -rw-------. 1 root root 1020 Nov 2 22:16 anaconda-ks.cfg -rw-r--r--. 1 root root 3907748 Apr 4 15:41 wordpress.backup
WordPress
docker run --name wordpress --link mysqlwp:mysql -p 80:80 \ -e WORDPRESS_DB_NAME=wordpress -e WORDPRESS_DB_USER=wordpress -e WORDPRESS_PASSWORD=mypress \ -d wordpress
进阶:利用Docker-Compose 一键安装
Docker-Compose是Docker的一种编排服务,是一个用于在Docker上定义并运行复杂应用的工具,可以让用户在集群中部署分布式应用。通过Docker-Compose用户可以很容易地用一个配置文件定义一个多容器的应用,然后使用一条指令安装这个应用的所有依赖,完成构建。Docker-Compose解决了容器与容器之间如何管理编排的问题。
#创建一个Wordpress应用,首先建立一个应用的目录 $ mkdir wordpress $ cd wordpress #创建 docker-compose.yml $ vim docker-compose.yml version: '2' services: db: image: mysql:5.7 volumes: - "./data/db:/var/lib/mysql" restart: always environment: MYSQL_ROOT_PASSWORD: wordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress wordpress: depends_on: - db image: wordpress:latest links: - db ports: - "8000:80" restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_PASSWORD: wordpress #MySQL的数据目录挂载到当前目录下,./.data/db不存在时会自动创建。 #启动应用 $ docker-compose up -d Starting wordpress_db_1 Starting wordpress_wordpress_1 #确认启动成功 $ docker-compose ps 675777c33fdb wordpress:latest "docker-entrypoint.sh" About an hour ago Up About a minute 0.0.0.0:8000->80/tcp wordpress_wordpress_1 6edfe3786798 mysql:5.7 "docker-entrypoint.sh" About an hour ago Up About a minute 3306/tcp wordpress_db_1 #访问应用 http://localhost:8000/[/code]
参考文档:
/mysql/”>https://hub.docker.com//mysql/
/wordpress/”>https://hub.docker.com//wordpress/
使用Docker-Compose编排容器
相关文章推荐
- Windows下Apache+php+MySql配置和wordpress的安装
- php+mysql及phpwind和wordpress的安装配置
- MAMP:在 OSX 中搭建 Apache, MySQL, PHP 环境并本地安装、调试 WordPress
- docker mysql镜像安装和使用
- LAMP下安装wordpress+MySQLadmin
- Ubuntu 6.06下的wordpress安装(MySQL + Php5 + Apache2)
- (转载)Linux下安装配置MySQL+Apache+PHP+WordPress的详细笔记
- 您的 PHP 似乎没有安装运行 WordPress 所必需的 MySQL 扩展”处理方法
- “您的 PHP 似乎没有安装运行 WordPress 所必需的 MySQL 扩展”处理方法
- Linux下,配置WordPress时出现“您的PHP似乎没有安装运行WordPress所必需的MySQL扩展”
- CentOS 5.5安装Nginx、PHP(FastCGI)、MySQL --搭建LNMP环境安装Wordpress
- ubuntu server 安装wordpress+mysql+apache+php
- Ubuntu下安装apache2,mysql,php,wordpress.
- MAMP:在 OSX 中搭建 Apache, MySQL, PHP 环境并本地安装、调试 WordPress
- Linux上安装Apache+PHP+MySQL以及wordpress
- LAMP+Tomcat+Discuz+WordPress【Mysql的安装】
- 图形版wordpress安装 错误:user的密码不正确。忘记密码了?---phpmyadmin-#1045 无法登录 MySQL 服务器
- centos5.2 yum安装apache+mysql+php 配置wordpress
- 以安装wordpress为例搭建apache+php+mysql的Web服务环境
- 在CentOS 6 中安装WordPress(一) 安装Apache,Mysql, PHP环境