---
title: Docker Compose
---

import EarlyDoc from '/snippets/earlydoc.mdx';
import DockerDatabase from '/snippets/docker-database.mdx';
import DockerEnvvarApps from '/snippets/docker-envvar-apps.mdx';

<EarlyDoc />
<DockerDatabase />

# Example `docker-compose.yml` file

```yaml
services:
  postiz:
  	image: ghcr.io/gitroomhq/postiz-app:latest
	container_name: postiz
	restart: always
	volumes:
	  - ./config:/config/ # Should contain your .env file
	ports:
	  - 4200:4200
	  - 3000:3000
	networks:
	  - postiz-network

  postiz-postgres:
    image: postgres:14.5
    container_name: postiz-postgres
    restart: always
    environment:
      POSTGRES_PASSWORD: postiz-local-pwd
      POSTGRES_USER: postiz-local
      POSTGRES_DB: postiz-db-local
    volumes:
      - postgres-volume:/var/lib/postgresql/data
    ports:
      - 5432:5432
    networks:
      - postiz-network
  postiz-pg-admin:
    image: dpage/pgadmin4
    container_name: postiz-pg-admin
    restart: always
    ports:
      - 8081:80
    environment:
      PGADMIN_DEFAULT_EMAIL: admin@admin.com
      PGADMIN_DEFAULT_PASSWORD: admin
    networks:
      - postiz-network
  postiz-redis:
    image: redis:7.2
    container_name: postiz-redis
    restart: always
    ports:
      - 6379:6379

volumes:
  postgres-volume:
    external: false

networks:
  postiz-network:
    external: false
```

<DockerEnvvarApps />
