diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index e092fd8..11320a8 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,6 +1,15 @@ FROM debian:13 -RUN apt update &&\ +ARG USERNAME=dev +ARG USER_UID=1000 +ARG USER_GID=1000 + +RUN groupadd --gid ${USER_GID:-1000} $USERNAME \ + && useradd --uid ${USER_UID:-1000} --gid ${USER_GID:-1000} -m $USERNAME + +RUN apt update &&\ apt install ca-certificates curl git -y &&\ curl -fsSL https://get.docker.com -o get-docker.sh &&\ sh get-docker.sh + +USER $USERNAME diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 1ab514f..4d6f28b 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,11 +1,20 @@ { "workspaceFolder": "/workspace", "workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,Z", + "remoteUser": "dev", "mounts": [ - "source=${localEnv:HOME}/.ssh,target=/root/.ssh,type=bind,readonly" + "source=${localEnv:HOME}/.ssh,target=/root/.ssh,type=bind,readonly" ], "build": { - "dockerfile": "Dockerfile" + "dockerfile": "Dockerfile", + "args": { + "USERNAME": "dev", + "USER_UID": "${localEnv:UID}", + "USER_GID": "${localEnv:GID}" + }, + }, + "containerEnv": { + "SHELL": "/bin/bash" }, "postCreateCommand": "docker context create prod --docker \"host=ssh://user@62.210.212.10\"" } diff --git a/Caddyfile b/Caddyfile index 0cd0e16..594c0c7 100644 --- a/Caddyfile +++ b/Caddyfile @@ -21,6 +21,10 @@ gitea.qpismont.fr { reverse_proxy gitea:3000 } +git.qpismont.fr { + reverse_proxy forgejo:3000 +} + woodpecker.qpismont.fr { reverse_proxy woodpecker_server:8000 } diff --git a/docker-compose.core.yml b/docker-compose.core.yml index 7f3143a..6a17d38 100644 --- a/docker-compose.core.yml +++ b/docker-compose.core.yml @@ -20,7 +20,7 @@ services: - prometheus_network woodpecker_server: - image: woodpeckerci/woodpecker-server:v3.18.1-alpine + image: woodpeckerci/woodpecker-server:v3.19-alpine volumes: - woodpeckerdata:/var/lib/woodpecker/ entrypoint: /bin/sh -c "export WOODPECKER_GITEA_CLIENT=$$(cat /run/secrets/woodpecker_gitea_client) && export WOODPECKER_GITEA_SECRET=$$(cat /run/secrets/woodpecker_gitea_secret) && export WOODPECKER_AGENT_SECRET=$$(cat /run/secrets/woodpecker_agent_secret) && /bin/woodpecker-server" @@ -37,7 +37,7 @@ services: - woodpecker_gitea_secret woodpecker_agent: - image: woodpeckerci/woodpecker-agent:v3.18.1-alpine + image: woodpeckerci/woodpecker-agent:v3.19-alpine volumes: - /var/run/docker.sock:/var/run/docker.sock entrypoint: /bin/sh -c "export WOODPECKER_AGENT_SECRET=$$(cat /run/secrets/woodpecker_agent_secret) && /bin/woodpecker-agent" @@ -50,6 +50,19 @@ services: secrets: - woodpecker_agent_secret + forgejo: + image: codeberg.org/forgejo/forgejo:17 + container_name: forgejo + environment: + - USER_UID=1000 + - USER_GID=1000 + restart: always + volumes: + - forgejodata:/data + - /etc/localtime:/etc/localtime:ro + networks: + - reverse_network + gitea: image: docker.gitea.com/gitea:1.27.3 environment: @@ -167,6 +180,7 @@ volumes: woodpeckerdata: reversecaddyconfig: reversecaddydata: + forgejodata: networks: reverse_network: diff --git a/otel-collector/config.yaml b/otel-collector/config.yaml index 2b76ef4..14f6c7a 100644 --- a/otel-collector/config.yaml +++ b/otel-collector/config.yaml @@ -42,6 +42,7 @@ receivers: - targets: - https://www.qpismont.fr - https://gitea.qpismont.fr + - https://git.qpismont.fr - https://woodpecker.qpismont.fr relabel_configs: - source_labels: [__address__]