Skip to content

Postiz

This automated deployment is based on the guide at https://docs.postiz.com/installation/docker-compose.

Deploying Postiz

Prerequisites

You will need to create a DNS record for a new subdomain on your domain. These steps will be uniquie to your domain registrar, but it should be simple to create an A record with the desired subdomain pointed to your server's IP address.

In this example the we'll choose postiz as the subdomain, so the URL for the server will be postiz.example.org

Single sign-on (SSO)

If you would like to use single sign-on (SSO), you will need to have an IdP solution in place. Otherwise, your users will log in with username and password. Instructions for setting up Postiz with Authentik are provided below.

1. Edit Inventory file

The host group for Postiz is [postiz]. Place the following information under that group.

The standard vaules:

  • The server's IP address.
  • server_tag= - This could be "postiz"
  • ansible_user= - The non-root user
  • ansible_become_pass="{{ nb_become_pass }}" - or change variable to the appropriate value in the Vault.
  • ansible_ssh_private_key_file="~/.ssh/id_ed25519_<server_tag>_<nonroot_user>" - The SSH key used to authenticate onto the server.

Extra values:

  • None.

Example:

[postiz]
203.0.113.73 server_tag=postiz ansible_user=serveradmin ansible_become_pass="{{ postiz_become_pass }}" ansible_ssh_private_key_file="~/.ssh/id_ed25519_postiz_serveradmin"

2. Edit Ansible Vault variables

Edit the Ansible Vault file:

ansible-vault edit group_vars/all/vaulted_vars.yml

Include the following settings:

# Postiz
# If you have a unique credentials for this server.
postiz_become_pass: <sudo password for non-root user>

3. Edit docker-compose.yml

The environmental variables for the Postiz deployment must be edited before running the playbook. It is located at lt-server-setup/roles/app_postiz/templates/docker-compose.yml. Open the file in a text editor and make these edits.

LIST EDITS HERE

4. Run Ansible playbook command

ansible-playbook lt_server_deploy.yml --ask-vault-pass --tags postiz

Post-deployment setup

5. Connect to the Posiz interface

Postiz doesn't have a management interface; you log right into the UI by go to the domain you set for the server. The first user registered should become the Admin user.

Confirm the registration through the link in your email. Don't forget to save the credentials in your password manager.

Advanced options

The provides a path to configuring many other options upfront. These include:

  • Custom identity providers (IdPs) like Keycloak, Authentik, and Zitadel.

ADD LINKS TO DOCS HERE

Updating the containers

ansible-playbook lt_server_deploy.yml --ask-vault-pass --tags postiz-update -vv

Connecting Postiz to Identity Provider - Authentik

Connecting Postiz to Identity Provider - Zitadel