在中国,生成Dockerfile WordPress环境后,可以使用Docker pull命令将其推送到本地仓库中
让我们尝试安装Docker、拉取、提交、推送、从Dockerfile构建等一系列操作,以创建一个WordPress环境为目的。
环境:可以在VirtualBox虚拟机上进行初始安装或在公共云上准备CentOS7实例。
事前准备好DockerHub账户。
安装Docker
1. Docker的安装
# yum -y install docker
# yum -y install docker
如果要在Yum上安装Docker,就需要使用操作系统发行版仓库中的相应Docker版本。
如果要安装最新版本的Docker,请执行以下命令。
※由于以下命令在2017年2月以后的版本安装最新版Docker会导致Docker构建错误,因此本页面建议使用yum进行安装。
# curl -fsSL https://get.docker.com/ | sh
2. Docker 的自动启动配置和服务启动。
# systemctl enable docker.service
# systemctl start docker.service
确认Docker的版本
# docker version
4. 确认系统信息
# docker info
从Docker Hub上获取容器镜像
使用search子命令来搜索注册表。
# docker search linaction
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/linaction/centos Sample CentOS6.7(Final) 0
2. 下载容器镜像
# docker pull -a linaction/centos
centos6: Pulling from docker.io/linaction/centos
47d44cb6f252: Already exists
6a7b54515901: Already exists
e788880c8cfa: Already exists
1debf8fb53e6: Already exists
72703a0520b7: Already exists
68833123ff9e: Already exists
ce76491a3be1: Already exists
Digest: sha256:759ea478951130a32e9191daaffc9b4e3c5ad089331eccc32112e370bf7c9fb8
Status: Image is up to date for docker.io/linaction/centos
请确认已下载的图像。
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/linaction/centos centos6 ce76491a3be1 About an hour ago 190.6 MB
启动容器
1. 启动容器
# docker run -it --name centos01 linaction/centos:centos6 /bin/bash
[root@f2f7ecdecaf2 /]#
检查已启动的容器。
1.确认容器环境的操作系统版本。
[root@f2f7ecdecaf2 /]# cat /etc/redhat-release
CentOS release 6.7 (Final)
确认容器内的进程。
[root@f2f7ecdecaf2 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:55 ? 00:00:00 /bin/bash
root 13 1 0 04:59 ? 00:00:00 ps -ef
3. 查看容器环境的网络
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
容器与宿主 Linux 切换
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# systemctl enable docker.service
# systemctl start docker.service
# docker version
4. 确认系统信息
# docker info
从Docker Hub上获取容器镜像
使用search子命令来搜索注册表。
# docker search linaction
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/linaction/centos Sample CentOS6.7(Final) 0
2. 下载容器镜像
# docker pull -a linaction/centos
centos6: Pulling from docker.io/linaction/centos
47d44cb6f252: Already exists
6a7b54515901: Already exists
e788880c8cfa: Already exists
1debf8fb53e6: Already exists
72703a0520b7: Already exists
68833123ff9e: Already exists
ce76491a3be1: Already exists
Digest: sha256:759ea478951130a32e9191daaffc9b4e3c5ad089331eccc32112e370bf7c9fb8
Status: Image is up to date for docker.io/linaction/centos
请确认已下载的图像。
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/linaction/centos centos6 ce76491a3be1 About an hour ago 190.6 MB
启动容器
1. 启动容器
# docker run -it --name centos01 linaction/centos:centos6 /bin/bash
[root@f2f7ecdecaf2 /]#
检查已启动的容器。
1.确认容器环境的操作系统版本。
[root@f2f7ecdecaf2 /]# cat /etc/redhat-release
CentOS release 6.7 (Final)
确认容器内的进程。
[root@f2f7ecdecaf2 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:55 ? 00:00:00 /bin/bash
root 13 1 0 04:59 ? 00:00:00 ps -ef
3. 查看容器环境的网络
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
容器与宿主 Linux 切换
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker info
使用search子命令来搜索注册表。
# docker search linaction
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/linaction/centos Sample CentOS6.7(Final) 0
2. 下载容器镜像
# docker pull -a linaction/centos
centos6: Pulling from docker.io/linaction/centos
47d44cb6f252: Already exists
6a7b54515901: Already exists
e788880c8cfa: Already exists
1debf8fb53e6: Already exists
72703a0520b7: Already exists
68833123ff9e: Already exists
ce76491a3be1: Already exists
Digest: sha256:759ea478951130a32e9191daaffc9b4e3c5ad089331eccc32112e370bf7c9fb8
Status: Image is up to date for docker.io/linaction/centos
请确认已下载的图像。
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/linaction/centos centos6 ce76491a3be1 About an hour ago 190.6 MB
启动容器
1. 启动容器
# docker run -it --name centos01 linaction/centos:centos6 /bin/bash
[root@f2f7ecdecaf2 /]#
检查已启动的容器。
1.确认容器环境的操作系统版本。
[root@f2f7ecdecaf2 /]# cat /etc/redhat-release
CentOS release 6.7 (Final)
确认容器内的进程。
[root@f2f7ecdecaf2 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:55 ? 00:00:00 /bin/bash
root 13 1 0 04:59 ? 00:00:00 ps -ef
3. 查看容器环境的网络
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
容器与宿主 Linux 切换
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker search linaction
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/linaction/centos Sample CentOS6.7(Final) 0
# docker pull -a linaction/centos
centos6: Pulling from docker.io/linaction/centos
47d44cb6f252: Already exists
6a7b54515901: Already exists
e788880c8cfa: Already exists
1debf8fb53e6: Already exists
72703a0520b7: Already exists
68833123ff9e: Already exists
ce76491a3be1: Already exists
Digest: sha256:759ea478951130a32e9191daaffc9b4e3c5ad089331eccc32112e370bf7c9fb8
Status: Image is up to date for docker.io/linaction/centos
请确认已下载的图像。
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/linaction/centos centos6 ce76491a3be1 About an hour ago 190.6 MB
启动容器
1. 启动容器
# docker run -it --name centos01 linaction/centos:centos6 /bin/bash
[root@f2f7ecdecaf2 /]#
检查已启动的容器。
1.确认容器环境的操作系统版本。
[root@f2f7ecdecaf2 /]# cat /etc/redhat-release
CentOS release 6.7 (Final)
确认容器内的进程。
[root@f2f7ecdecaf2 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:55 ? 00:00:00 /bin/bash
root 13 1 0 04:59 ? 00:00:00 ps -ef
3. 查看容器环境的网络
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
容器与宿主 Linux 切换
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
docker.io/linaction/centos centos6 ce76491a3be1 About an hour ago 190.6 MB
1. 启动容器
# docker run -it --name centos01 linaction/centos:centos6 /bin/bash
[root@f2f7ecdecaf2 /]#
检查已启动的容器。
1.确认容器环境的操作系统版本。
[root@f2f7ecdecaf2 /]# cat /etc/redhat-release
CentOS release 6.7 (Final)
确认容器内的进程。
[root@f2f7ecdecaf2 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:55 ? 00:00:00 /bin/bash
root 13 1 0 04:59 ? 00:00:00 ps -ef
3. 查看容器环境的网络
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
容器与宿主 Linux 切换
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker run -it --name centos01 linaction/centos:centos6 /bin/bash
[root@f2f7ecdecaf2 /]#
1.确认容器环境的操作系统版本。
[root@f2f7ecdecaf2 /]# cat /etc/redhat-release
CentOS release 6.7 (Final)
确认容器内的进程。
[root@f2f7ecdecaf2 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:55 ? 00:00:00 /bin/bash
root 13 1 0 04:59 ? 00:00:00 ps -ef
3. 查看容器环境的网络
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
容器与宿主 Linux 切换
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
[root@f2f7ecdecaf2 /]# cat /etc/redhat-release
CentOS release 6.7 (Final)
[root@f2f7ecdecaf2 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 04:55 ? 00:00:00 /bin/bash
root 13 1 0 04:59 ? 00:00:00 ps -ef
3. 查看容器环境的网络
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
容器与宿主 Linux 切换
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
[root@f2f7ecdecaf2 /]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 02:42:AC:11:00:04
inet addr:172.17.0.4 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:4/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:648 (648.0 b) TX bytes:738 (738.0 b)
1. 从容器的/bin/bash退出并返回到宿主Linux。按住Ctrl键,依次按下P和Q。
2. 从主机Linux再次连接到容器内的bash。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker attach centos01
[root@f2f7ecdecaf2 /]#
容器的启动和停止
1. 返回Linux主机按住Ctrl键,依次按下P和Q键。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
停止容器
# docker stop centos01
3.确认已停止的容器
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker stop centos01
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 23 minutes ago Exited (137) 13 seconds ago centos01
启动容器
# docker start centos01
确认已启动的容器
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker start centos01
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
6. Docker exec命令 (Docker exec command)
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
使用 Dockerfile 创建 WordPress 环境
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker exec -it centos01 /bin/bash
[root@f2f7ecdecaf2 /]# exit
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f2f7ecdecaf2 linaction/centos:centos6 "/bin/bash" 30 minutes ago Up 4 seconds centos01
1. 停止容器
# docker stop centos01
创建一个用于build的目录。
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker stop centos01
# mkdir ~/build_wordpress
1. 创建Dockerfile
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
执行 Dockerfile
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# cd build_wordpress
# vim Dockerfile
Dockerfileのソースは事項参照
:wq
#centos6のイメージを取得
FROM centos:centos6
#タイムゾーンの設定
RUN /bin/cp /usr/share/zoneinfo/Asia/Tokyo /etc/localtime
#yumリポジトリの追加
RUN yum install -y epel-release
RUN rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#php7のインストール
RUN yum install -y --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-mysql php-gd php-mcrypt libmcrypt
#yumによるHTTPD,MySQL,tar,wgetのインストール
RUN yum -y install httpd mysql-server tar wget
#tmpディレクトリに移動
WORKDIR /tmp/
#wordpress一式のダウンロード
RUN wget https://ja.wordpress.org/latest-ja.tar.gz
#wordpressの展開
RUN tar xvfz ./latest-ja.tar.gz -C /var/www/html
#ダウンロードしたwordpressの削除
RUN rm -f ./latest-ja.tar.gz
#wordpressのconfigファイルをリネームして利用可能にする
RUN cp /var/www/html/wordpress/wp-config-sample.php /var/www/html/wordpress/wp-config.php
#wordpressのconfigファイルに必要な情報をsedコマンドで書き換える
RUN sed -i -e 's/database_name_here/wordpress/g' -e 's/username_here/wordpress/g' -e 's/password_here/wppass/g' /var/www/html/wordpress/wp-config.php
#DocumentRootディレクトリの所有者をapacheに変更
RUN chown -R apache.apache /var/www/html/
#mysqldの起動、DB作成、ユーザ作成および権限設定、mysqldの停止
RUN service mysqld start && mysql -u root -e "CREATE DATABASE wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'wppass'; FLUSH PRIVILEGES;" && service mysqld stop
#mysqld,httpdの起動スクリプトの作成
RUN echo -e "service mysqld start\nservice httpd start\n/bin/bash" > /startService.sh
#mysqld,httpdの起動スクリプトの権限設定
RUN chmod o+x /startService.sh
#公開ポート
EXPOSE 80
#mysqld,httpdの起動スクリプトの実行
CMD /startService.sh
# docker build -t linaction/wordpress:ver1.0 ~/build_wordpress
・
・
Successfully built 0c4e45b86bcd
5. 启动容器
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
提交容器
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker run -itd -p 8000:80 --name wordpress01 linaction/wordpress:ver1.0
3ce407416874308af370951ecf56c77b53e2aa405ba20aae51593fd3a0e2e108
1. 确认浏览器请访问「http://VirtualBox的IP地址:8000/」,确保WordPress的管理页面显示正常。
* 如果使用的是公共云平台,请解除云端防火墙限制,以便能够通过外部IP地址和端口进行访问。
2.停止容器。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker stop wordpress01
3. 储存容器
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
确认容器映像
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker commit wordpress01 DockerHubアカウント名/wordpress:ver1.0
cf75652d0f8a1509a5ad132ecf1214416c2b8dbf9fe9f93830ab8b51e738db73
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
linaction/wordpress ver1.0 cf75652d0f8a 56 seconds ago 474.9 MB
docker.io/centos centos6 26cb1244b171 6 days ago 195 MB
docker.io/DockerHubアカウント名/centos centos6 ce76491a3be1 2 hours ago 190.6 MB
将容器镜像推送至Docker Hub。
1. 登录到Docker Hub
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker login
Username:
Password:
Email:
Login Succeeded
2. 将容器镜像推送到 Docker Hub
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
3. 查看存储库
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker push DockerHubアカウント名/wordpress
Do you really want to push to public registry? [y/n]: y
The push refers to a repository [docker.io/linaction/wordpress] (len: 0)
・
・
Digest: sha256:97e3bd8b7ed451163af7284513d398c426c796451d343400a9859156c1a8c021
# docker search DockerHubアカウント名
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED
docker.io docker.io/DockerHubアカウント名/wordpress
重新下载容器映像让我们最后删除所有的镜像和停止容器,然后下载并启动推送的WordPress容器镜像。
停止容器的批量删除
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker rm `docker ps -a -q`
# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2. 批量删除图像
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
下载WordPress容器镜像
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker rmi `docker images -a -q`
# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
# docker pull -a DockerHubアカウント名/wordpress
启动容器
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
5. 浏览器确认访问「http://VirtualBox的IP地址:8000/」,确认WordPress管理界面被显示
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。
# docker run -itd -p 8000:80 --name wordpress01 DockerHubアカウント名/wordpress:ver1.0
※如果是公共云环境,请解除云端防火墙的限制,以使外部IP和端口可以访问。