ConfigMapについて
第14回 ELT
テクノロジーサービス企画推進部
本田 新
Docker-composeを使ったnginxのconf
…
nginx:
build: ./nginx
ports:
- 8080:80
depends_on:
- web
networks:
- nginx_network
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
...
volumesでマウント
Docker-composeを使ったnginxのconf
…
nginx:
build: ./nginx
ports:
- 8080:80
depends_on:
- web
networks:
- nginx_network
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
...
volumesでマウント
Kubernetesで書き
たい!!
三択はあるとおもう
https://qiita.com/petitviolet/items/ee4b1bdba2670a1d6a12
● Dockerイメージの中に入れておく
(ADDした状態でbuild)
→公式のimageはこの段階で使えない
● コンテナにVolumeとしてマウントする
→docker-composeっぽい
● どこかのストレージに置いておいてダウンロードする
→なんかめんどくさそう(個人的意見
ConfigMap
● podの中に設定を注入できるリソー
ス
● key-valueで持てる
● pipe(|)はスカラ値を表してる
https://kubernetes.io/docs/concepts/storage/volumes/#configmap
apiVersion: v1
kind: ConfigMap
metadata:
name: nginx-config
data:
nginx.conf: |
events {
}
http {
server {
listen 80 default_server;
listen [::]:80 default_server;
….
ConfigMapのあてはめ方
https://kubernetes.io/docs/concepts/storage/volumes/#configmap
volumes:
- name: nginx-config-volume
configMap:
name: nginx-config  #configMap.ymlで設定したname
items:
- key: nginx.conf #configMap.ymlで設定したkey
path: nginx.conf
containers:
- image: nginx:1.7.9
...
volumeMounts:
- name: nginx-config-volume #上のVolumesで設定したname
mountPath: /etc/nginx/nginx.conf #マウント先
DEMO

Config mapについて