Skip to main content

Pixelfield

Die Alternative zu Instagram.

 

version: '3'
services:
  pixelfed:
    image: pixelfed:20210125 #replace with the tag you just made
    restart: unless-stopped
    ports:
      - "8080:80" #80 is the port inside the container, 8080 is the port outside
    env_file:
      - ./.env
    volumes:
      -./pixelfed-storage:/var/www/storage/;
      - ./app-bootstrap:/var/www/bootstrap/;
      - ./.env:/var/www/.env
    networks:
      - web
      - pixelfed
  db:
    image: mysql:8.0 # You can probably also get it to work with mariadb
    restart: unless-stopped
    networks:
     - pixelfed
    command: --default-authentication-plugin=mysql_native_password
    volumes:
     - db-data:/var/lib/mysql
    environment:
     - MYSQL_DATABASE=pixelfed
     - MYSQL_USER=${DB_USERNAME}
     - MYSQL_PASSWORD=${DB_PASSWORD}
     - MYSQL_RANDOM_ROOT_PASSWORD=true
  worker:
    image: pixelfed:20210125 #replace with the tag you just made
    restart: unless-stopped
    env_file:
      - ./.env
    volumes:
      - "pixelfed-storage:/var/www/storage"
      - "app-bootstrap:/var/www/bootstrap"
    networks:
      - web  # Required for ActivityPub
      - pixelfed
    command: gosu www-data php artisan horizon
  redis:
    image: redis:5-alpine
    restart: unless-stopped
    volumes:
      - "redis-data:/data"
    networks:
      - pixelfed
volumes: 
  redis-data:
  app-bootstrap:
  pixelfed-storage:
  db-data:
networks:
  pixelfed:
    internal: true
  web:
    external: true</code></pre></div>
docker-compose.yml