https://github.com/int128/dockerfiles/blob/master/centos7/Dockerfile
% docker build my:centos7 .
% docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
my centos7 c70e14eeee41 2 hours ago 364.2 MB
from my:centos7
run yum install -y nginx
add SOMECERT.crt /etc/nginx/SOMECERT.crt
add SOMECERT.key /etc/nginx/SOMECERT.key
add nginx.conf /etc/nginx/nginx.conf
volume /var/log/nginx
expose 443
cmd ["nginx"]
% docker build my:lb .
% docker run -p 443:443 -v /tmp/nginx:/var/log/nginx my:lb
SNIが有効の場合は複数のwildcard certificateが使える。
知らないホストをreturn 444する場合はdefault_server
を付ける。
server {
listen 443 ssl default_server;
server_name _;
ssl_certificate https-wildcard.crt;
ssl_certificate_key https-wildcard.key;
return 444;
}
server {
listen 443 ssl;
server_name www.example.org;
ssl_certificate https-wildcard.crt;
ssl_certificate_key https-wildcard.key;
}
server {
listen 443 ssl;
server_name www.some.example.org;
ssl_certificate https-wildcard-some.crt;
ssl_certificate_key https-wildcard-some.key;
}
- 複数のコンテナを協調動作させる場合の方法
- nginx - java - db
- nginx - php - db
- ログ管理
nginx
とかmysql
とかjenkins
とか公式に提供されているが、みんなベースイメージが違うので使いまくるとディスク使用量が肥大化する。自分でベースイメージを定義してyumで付け足していくのがよさげ。- コンテナのプロセスにはfirewalldのポリシーが効かない。
-p
引数のルールが優先される。