| 177 | == Dockerでサービスを利用 |
| 178 | |
| 179 | 上記のsystemdを利用する方法は、特権が必要となり、あまりセキュアではない。supervisordを利用すると、docker内でサービスを管理することができます。 |
| 180 | |
| 181 | {{{ |
| 182 | # apt-get install python-setuptools |
| 183 | # easy_install supervisord |
| 184 | # echo_supervisord_conf > /etc/supervisord.conf |
| 185 | }}} |
| 186 | |
| 187 | 上記supervisord.confにサービスの設定を記述 |
| 188 | |
| 189 | {{{ |
| 190 | [supervisord] |
| 191 | nodaemon=true |
| 192 | |
| 193 | [program:mariadb] |
| 194 | command=/usr/bin/mysqld_safe |
| 195 | autostart=true |
| 196 | autorestart=true |
| 197 | |
| 198 | [program:httpd] |
| 199 | command=/usr/local/bin/pidproxy /var/run/apache2/apache2.pid /bin/bash -c "source /etc/apache2/envvars && /usr/sbin/apache2 -DFOREGROUND" |
| 200 | redirect_stderr=true |
| 201 | }}} |
| 202 | |
| 203 | イメージをコミットして、supervisordをコンテナで起動すれば、mysqlとapacheが起動する。 |
| 204 | |
| 205 | {{{ |
| 206 | # docker run image /usr/local/bin/supervisord |
| 207 | }}} |
| 208 | |
| 209 | |