Last active
January 7, 2023 02:36
-
-
Save rpodcast/87fb7aa02df7cc70b9199455d2e86e1e to your computer and use it in GitHub Desktop.
castopod in docker-compose
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## Version 2022/10/06 | |
# make sure that your dns has a cname set for castopod and that your castopod container is not using a base url | |
server { | |
listen 443 ssl; | |
listen [::]:443 ssl; | |
server_name castopod.*; | |
include /config/nginx/ssl.conf; | |
client_max_body_size 0; | |
# enable for ldap auth (requires ldap-location.conf in the location block) | |
#include /config/nginx/ldap-server.conf; | |
# enable for Authelia (requires authelia-location.conf in the location block) | |
#include /config/nginx/authelia-server.conf; | |
location / { | |
# enable the next two lines for http auth | |
#auth_basic "Restricted"; | |
#auth_basic_user_file /config/nginx/.htpasswd; | |
# enable for ldap auth (requires ldap-server.conf in the server block) | |
#include /config/nginx/ldap-location.conf; | |
# enable for Authelia (requires authelia-server.conf in the server block) | |
#include /config/nginx/authelia-location.conf; | |
include /config/nginx/proxy.conf; | |
include /config/nginx/resolver.conf; | |
set $upstream_app castopod; | |
set $upstream_port 80; | |
set $upstream_proto http; | |
proxy_pass $upstream_proto://$upstream_app:$upstream_port; | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: "3.7" | |
services: | |
app: | |
image: castopod/app:develop | |
container_name: "castopod-app1" | |
volumes: | |
- ./castopod-media:/opt/castopod/public/media | |
environment: | |
MYSQL_DATABASE: castopod1 | |
MYSQL_USER: castopod1 | |
MYSQL_PASSWORD: changeme1 | |
CP_BASEURL: "http://castopod.mydomain.com" | |
CP_ANALYTICS_SALT: changeme20001 | |
CP_CACHE_HANDLER: redis | |
CP_REDIS_HOST: redis | |
CP_DISABLE_HTTPS: 1 | |
PUID: 1000 | |
PGID: 1000 | |
restart: unless-stopped | |
web-server: | |
image: castopod/web-server:develop | |
container_name: "castopod-web-server1" | |
volumes: | |
- ./castopod-media:/var/www/html/media | |
environment: | |
PUID: 1000 | |
PGID: 1000 | |
ports: | |
- 8087:80 | |
restart: unless-stopped | |
mariadb: | |
image: mariadb:10.5 | |
container_name: "castopod-mariadb1" | |
volumes: | |
- ./castopod-db:/var/lib/mysql | |
environment: | |
MYSQL_ROOT_PASSWORD: changeme01 | |
MYSQL_DATABASE: castopod1 | |
MYSQL_USER: castopod1 | |
MYSQL_PASSWORD: changeme1 | |
PUID: 1000 | |
PGID: 1000 | |
restart: unless-stopped | |
redis: | |
image: redis:7.0-alpine | |
container_name: "castopod-redis1" | |
volumes: | |
- ./castopod-cache:/data | |
environment: | |
PUID: 1000 | |
PGID: 1000 | |
swag: | |
image: lscr.io/linuxserver/swag | |
container_name: swag | |
cap_add: | |
- NET_ADMIN | |
environment: | |
- PUID=1000 | |
- PGID=1000 | |
- TZ=US/Eastern | |
- URL=mydomain.com | |
- SUBDOMAINS=castopod | |
- VALIDATION=http | |
volumes: | |
- ./swag:/config | |
ports: | |
- 443:443 | |
- 80:80 | |
restart: unless-stopped | |
volumes: | |
castopod-media: | |
castopod-db: | |
castopod-cache: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I finally got castopod working in Docker! Here's what I needed to do (and I'm not sure if there was a better way)
CP_BASEURL
in the app service needs to be the http version with the subdomain, without the portURL
in the swag service is the domain without an http prefix, withSUBDOMAINS
being the relevant subdomain (in this casecastopod
)With these changes in place, I did not have to modify the
castopod.subdomain.conf
supplied in the swag container.