Fork me on GitHub

Herr Knedel/Uncool with Atlassian: jak se vypořádat se zásadami společnosti Atlassian

Created Wed, 14 Apr 2021 00:00:00 +0000 Modified Mon, 28 Mar 2022 18:22:21 +0000 Schwierigkeitsgrad: Es kann etwas länger dauern

310 Words

Atlassian přestal prodávat licence pro malé servery a já jsem dlouho přemýšlel, jak to řešit. Protože chci svou instalaci používat ještě dlouho, provedl jsem následující opatření:

Opatření 1: Používám výhradně Docker

Všechny nástroje Atlassian používám jako kontejnery Docker. Starší nativní instalace lze do instalace Dockeru přenést také prostřednictvím databázových dumpu. Ty pak lze pohodlně spustit na zařízení intel Nuc nebo na diskové stanici Synology v domácím prostředí.

version: '2'
services:
  jira:
    image: atlassian/jira-software
    container_name: jira_application
    depends_on:
      - db
    restart: always
    environment:
      TZ: 'Europe/Berlin'
    ports:
      - 8080:8080
    volumes:
      - ./jira-data:/var/atlassian/application-data/jira
    networks:
      - jira-network
      
  db:
    restart: always
    image: postgres:latest
    container_name: jira_db
    volumes:
      - ./postgresql:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=jira
      - POSTGRES_PASSWORD=jirapass
      - POSTGRES_DB=jira
    networks:
      - jira-network

networks:
  jira-network:


version: '2'
services:
  confluence:
    container_name: confluence_server
    image: atlassian/confluence-server:latest
    restart: always
    environment:
      TZ: "Europe/Berlin"
    volumes:
      - ./confluence:/var/atlassian/application-data/confluence/
    ports:
      - 8080:8080
    networks:
      - confluence-network
    depends_on:
      - db

  db:
    image: postgres:latest
    container_name: confluence_postgres
    restart: always
    volumes:
      - /postgresql:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=confluencedb
      - POSTGRES_PASSWORD=confluence-password
      - POSTGRES_DB=confluenceUser
    networks:
      - confluence-network

networks:
  confluence-network:

version: '2'

services:
  bamboo:
    container_name: bamboo_server
    image: atlassian/bamboo-server
    restart: always
    environment:
      TZ: "Europe/Berlin"
    volumes:
      - ./bamboo-data:/var/atlassian/application-data/bamboo
    ports:
      - 8080:8080
    networks:
      - bamboo-network
    depends_on:
      - db

  db:
    image: postgres:latest
    container_name: bamboo-postgres
    restart: always
    volumes:
      - ./postgresql:/var/lib/postgresql/data
    environment:
      - POSTGRES_USER=bamboo
      - POSTGRES_PASSWORD=bamboo
      - POSTGRES_DB=bamboo
    networks:
      - bamboo-network

networks:
  bamboo-network:


Opatření 2: Zálohování databází a obrazů

V mé strategii obnovy po havárii samozřejmě hrají velkou roli každodenní decentralizované zálohy databází. Zálohoval jsem však také instalační obrazy. Obraz aplikace Docker lze archivovat pomocí následujícího příkazu:

x
+
Terminal

$ docker save -o bamboo-7.2.3-image.tar atlassian/bamboo-server

Archiv lze do registru Docker nahrát následujícím způsobem.
x
+
Terminal

$ ocker load -i bamboo-7.2.3-image.tar

Uložil jsem také obrazy systému Postgres.

Akce 3: Vytvoření instalační paměti USB

Zálohoval jsem dokumentaci, všechny instalační archivy, datové adresáře Postgresu a konfigurace na USB disk. Jak jsem řekl, záloha DB je vlastně nejdůležitější, protože aktivovaná licence je také v databázi.