Configure IDP with Docker and Apache
Reverse proxy to a Docker container running the Miracl SSO service.
1. Verify the Docker Container
Confirm that the Docker container running Miracl SSO is up:
docker ps
The service should be running on localhost:8500.
2. Update Apache Configuration
Edit the Apache virtual host configuration:
sudo nano /etc/apache2/sites-available/idp.cymeg.com.conf
Add the following for HTTP (port 80) and HTTPS (port 443) reverse proxy:
<VirtualHost *:80>
ServerName idp.cymeg.com
ProxyPass / http://localhost:8500/
ProxyPassReverse / http://localhost:8500/
ErrorLog /var/log/virtualmin/idp.cymeg.com_error_log
CustomLog /var/log/virtualmin/idp.cymeg.com_access_log combined
</VirtualHost>
<VirtualHost *:443>
ServerName idp.cymeg.com
SSLEngine on
SSLCertificateFile /etc/ssl/virtualmin/.../ssl.combined
SSLCertificateKeyFile /etc/ssl/virtualmin/.../ssl.key
SSLCACertificateFile /etc/ssl/virtualmin/.../ssl.ca
ProxyPass / http://localhost:8500/
ProxyPassReverse / http://localhost:8500/
ErrorLog /var/log/virtualmin/idp.cymeg.com_error_log
CustomLog /var/log/virtualmin/idp.cymeg.com_access_log combined
</VirtualHost>
3. Enable Apache Proxy Modules
sudo a2enmod proxy
sudo a2enmod proxy_http
4. Restart Apache
sudo systemctl restart apache2
5. Test the Configuration
Access http://idp.cymeg.com and https://idp.cymeg.com to verify traffic is proxied correctly.
Result: Setup complete. Traffic is now proxied to the Docker container.