% master: arbeiten.tex
% Mit Docker arbeiten v0.1
% 2025-02-15 (Rx)

\section{Mit Docker arbeiten}
%----------------------------

\index{docker}
\begin{verbatim}
docker ps                           laufende Container auflisten
docker ps -a                        alle Container auflisten, auch gestoppte
docker images                       alle Images auflisten
docker stop Containername           laufenden Container beenden

docker run -p 80:80 nginx           simplen Webserver nginx starten
                                    Hostport:Containerport
\end{verbatim}
Arbeiten mit Docker-Compose
\index{docker-compose}
\begin{verbatim}
nano docker-compose.yml             Datei docker-compose.yml mit dem Editor
                                    nano bearbeiten. Die Datei docker-compose.yml
                                    enthält die Definition der Container.
docker-compose up -d                die Compose-Zusammenstellung hochfahren
docker-compose pull                 Container updaten, neue Images laden
\end{verbatim}
Meine docker-compose.yml:
\begin{verbatim}
services:

  portainer:
    container_name: portainer
    image: portainer/portainer-ce
    ports:
     - '9000:9000'
    volumes:
     - /var/run/docker.sock:/var/run/docker.sock
     - ./portainer_data:/data
    restart: always

  forgejo:
    container_name: forgejo
    image: codeberg.org/forgejo/forgejo:10
    ports:
     - '3000:3000'
     - '222:22'
    environment:
     - USER_UID=1000
     - USER_GID=1000
    volumes:
     - ./forgejo_data:/data
     - /etc/timezone:/etc/timezone:ro
     - /etc/localtime:/etc/localtime:ro
    restart: always  
\end{verbatim}