docker 安装参考网上教程.
2.CentOS 服务器环境搭建
2.1 启动 Docker 容器
保证容器已经打开, 本人使用的是 Docker for Windows, 双击 Docker Desktop 图标运行, 并打开 PowerShell(推荐) 或 CMD.
2.2 获取 CentOS 镜像
输入如下命令查找 Docker Hub 上的 CentOS 镜像
docker search CentOS
查找 CentOS 镜像
这里我们拉取官方的镜像, 默认最新, 如需其他版本, 输入格式为:
- docker pull CentOS:6
- .
- docker pull CentOS
等待下载完成后, 我们就可以在本地镜像列表里查到 REPOSITORY 为 CentOS 的镜像.
查看 CentOS 本地镜像
2.3 运行 CentOS 容器
使用如下命令运行 CentOS 容器
docker run -itd -p 2222:22 -p 8888:80 --privileged=true -v /sys/fs/cgroup:/sys/fs/cgroup 9f38484d220f /usr/sbin/init /bin/bash
docker: Docker 的二进制执行文件.
run: 与前面的 docker 组合来运行一个容器.
-d: 让容器在后台运行.
-p: 将容器内部使用的网络端口映射到我们使用的主机上.
-t: 在新容器内指定一个伪终端或终端.
-i: 允许你对容器内的标准输入 (STDIN) 进行交互.
--privileged: 以特权方式启动容器
-v: 挂载宿主机的一个目录
9f38484d220f: 指定要运行的镜像, 镜像 ID.
/bin/bash: 在启动的容器里执行的命令这里进入 bash 这个 shell.
使用 docker ps 获取容器 ID, 我的为 9ad6608450b4.
使用如下命令启动容器.
docker exec -it 9ad6608450b4 /bin/bash
现在可以发现我们已经进入了 docker 容器中, 过程如下图所示.
运行 CentOS 容器
2.4 安装 wget
CentOS 为轻量级版本, 很多包不会默认安装, 使用 wget 时提示
-bash:wget command not found
, 我们先安装 wget 包, 下一步会用.
yum -y install wget
2.5 安装 MySQL-community-release-el7-5.noarch.rpm 包
此时, 如果直接使用 yum 安装 MySQL-server 会提示找不到包, 因此我们先下载对应的源并安装 rpm 包.
- wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
- rpm -ivh MySQL-community-release-el7-5.noarch.rpm
2.6 安装 initscripts
能解决下一步不能启动 service 问题
- yum list | grep initscripts
- yum install initscripts -y
2.7 安装 MySQL
使用 yum 安装 MySQL 以及 MySQL-server, 并设置开机启动, 以及开启服务.
- yum install MySQL
- yum -y install MySQL-community-server
- systemctl enable mysqld.service // 设置开机启动
- /bin/systemctl start mysqld.service // 启动 MySQL 服务
2.8 安装 apache
使用 yum 安装 httpd, 并设置开机启动, 以及开启服务.
- yum install httpd
- systemctl enable httpd.service // 设置开机启动
- /bin/systemctl start httpd.service // 启动 httpd 服务
2.8 安装 PHP
使用 yum 安装 PHP.
- yum install PHP
- yum install PHP-MySQL PHP-gd PHP-imap PHP-ldap PHP-odbc PHP-Pear PHP-xml PHP-xmlrpc
2.9 安装 SSH 服务端
使用 yum 安装 SSH 服务器, 并设置开机启动, 以及重启服务.
- yum install openssh-server
- systemctl restart sshd // 重启 SSH 服务
- systemctl enable sshd // 设置开机启动
3. 保存容器镜像
按 Ctrl+Z 可以在不结束容器进程的情况下退出 Bash(有过使用 Ctrl+D 导致过退出容器, 数据丢失, 不知道什么问题, 不敢用), 这时回到了 Windows 的命令行下, 输入
docker ps
查看正在运行的容器信息.
当前运行的容器
然后通过上面命令得到的容器 ID 来提交这个容器的修改.
docker commit ae4ea5ef11c5 CentOS:v2
再次查看镜像.
docker images CentOS
此时, 修改的镜像已经保存, 下次直接运行本镜像即可.
查看 CentOS 镜像
4. 备注
到此为止, 整个环境搭建就结束了, 可以运行保存的镜像进行各种测试.
启动了容器, 可以使用 sftp 来进行主机与容器之间的数据传输.(我使用的 xshell+xftp, 绝对好用)
Apache 网上有很多模板, 源代码, 可以用来学习, 做好了直接使用 xftp 传入 / var/www/html / 文件目录即可.
此教程为本人的学习总结, 希望对你有所帮助.
来源: http://www.jianshu.com/p/854fc20e2173