- neko6 blog
今度はホストからだけではなく、外部からのアクセスを許可するように
ファイヤーウォール、iptablesの設定を変更します。
再度、コンテナのIPアドレスを取得します。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d5b0c253fe0c centos/apache:web "/usr/sbin/httpd -DF 4 seconds ago Up 3 seconds 0.0.0.0:80->80/tcp modest_blackwell
#
# docker inspect --format '{{ .NetworkSettings.IPAddress }}' d5b0c253fe0c(CONTAINER ID、NAMES)
172.17.0.5
#
# cat /proc/sys/net/ipv4/ip_forward
1
#
# vi /etc/sysconfig/iptables
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -p tcp --dport 80 -j ACCEPT
-A FORWARD -p tcp --dport 80 -d 172.17.0.5 -j ACCEPT
こんな感じにインプットとフォワードを設定します。
今度は自動起動するようなコンテナを作ってみます。
ちょっと調べてみましたが、
1つのコンテナで複数サービスを起動させる方法って
まだこれというのがないみたい?
今回は、Apache httpdを使ってみようと思います。
なにはともあれコンテナを作りましょ。
–name=web(コンテナ名)
-p 80(ホスト側ポート):80(コンテナ側ポート)
# docker run -i -t --name=web -p 80:80 centos:6 /bin/bash [root@535492bbb30c /]# [root@535492bbb30c /]# yum install httpd [root@535492bbb30c /]# service httpd start Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.5 for ServerName
コンテナにhttpdを入れて起動させましょう。
ConoHaのVPSはデフォルトOSだと
CentOS6が入ってて、パーティションは
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
18G 1.8G 15G 11% /
tmpfs 499M 0 499M 0% /dev/shm
/dev/vda1 477M 50M 403M 11% /boot
/dev/vdb 79G 1.5G 74G 2% /data
みたいになっています。
Dcokerは通常、「/var/lib/docker」にいろいろと保存されています。
# ll /var/vib/docker/ total 48 drwx------ 2 root root 4096 Mar 28 10:18 containers drwx------ 4 root root 4096 Mar 28 10:18 devicemapper drwx------ 2 root root 4096 Mar 28 10:22 docker drwx------ 3 root root 4096 Mar 28 10:18 execdriver drwx------ 2 root root 4096 Mar 28 10:18 graph drwx------ 2 root root 4096 Mar 28 10:18 init -rw-r--r-- 1 root root 5120 Mar 28 10:18 linkgraph.db -rw------- 1 root root 19 Mar 28 10:18 repositories-devicemapper drwx------ 2 root root 4096 Mar 28 10:18 tmp drwx------ 2 root root 4096 Mar 28 10:18 trust drwx------ 2 root root 4096 Mar 28 10:18 volumes
ということは、すぐにいっぱいになってしまいますw
なのでどうせなら移動してみようかと思います。
docker importとか使う方法もあるかと思いますが、
今回はまるっとやってみましたw