Via Docker
Cool! No problem under ELB SSL-Terminate.
run (& pull)
docker run --name myadmin -it -d -e PMA_HOSTS=172.31.x.y,rdsxxx.amazonaws.com -p 8080:80 phpmyadmin/phpmyadmin
Container host listen 8080 for myadmin
container.
Daemonize
With upstart
(CentOS6, AmazonLinux, ubuntu14)
/etc/init/phpmyadmin.conf
description "phpmyadmin"
author "Me"
# start on started docker <- wanto use it, But this is wortless. upstart can not cautch SysV service.
start on stopped rc RUNLEVEL=[345]
stop on runlevel [!2345]
respawn
script
/usr/bin/docker start -a myadmin
end script
Ops
initctl --reload-configuration
initctl start
# of course
chkconfig docker on
With systemd
/etc/systemd/system/phpmyadmin-service
[Unit]
Description=phpmyadmin
Requires=docker.service
After=docker.service
[Service]
Restart=always
ExecStart=/usr/bin/docker start -a myadmin
ExecStop=/usr/bin/docker stop -t 2 myadmin
[Install]
WantedBy=default.target
Remenber systemctl daemon-reload
Tips (via docker)
- Use ENV_VARS. https://github.com/phpmyadmin/docker#environment-variables-summary
- phpmyadmin's conf file eval ENV_VARS and apply it to PHP-code.
- If you need more messy configuration, mount container hosts's file.
- I confirmed ELB + SSL Terminated in no
ForceSSL
setting.
Why SSL fail (https://url:80/index.php....)?
config.inc.php
$cfg['ForceSSL'] = true;