Compare commits

...

2 Commits

Author SHA1 Message Date
Leon Morival 54c772e137 feat: fix networks
Laravel CI-CD / Tests Unitaires (push) Successful in 22s Details
Laravel CI-CD / Deploy with Kamal (push) Failing after 42s Details
2026-05-19 19:20:44 +02:00
Leon Morival 70dc6d0992 feat: fix networks 2026-05-19 19:12:25 +02:00
3 changed files with 39 additions and 13 deletions

View File

@ -81,7 +81,22 @@ jobs:
chmod 700 /root/.ssh chmod 700 /root/.ssh
printf "%s\n" "$SSH_PRIVATE_KEY" | tr -d "\r" > /root/.ssh/id_ed25519 printf "%s\n" "$SSH_PRIVATE_KEY" | tr -d "\r" > /root/.ssh/id_ed25519
chmod 600 /root/.ssh/id_ed25519 chmod 600 /root/.ssh/id_ed25519
ssh-keyscan -H "${SSH_HOST:-89.167.35.217}" >> /root/.ssh/known_hosts
REMOTE_HOST="${SSH_HOST:-89.167.35.217}"
REMOTE_USER="${SSH_USER:-root}"
mkdir -p /workdir/.ssh
cat > /workdir/.ssh/config <<'"'"'SSH_CONFIG'"'"'
Host *
IdentityFile /root/.ssh/id_ed25519
IdentitiesOnly yes
StrictHostKeyChecking yes
UserKnownHostsFile /workdir/.ssh/known_hosts
GlobalKnownHostsFile /dev/null
CheckHostIP no
SSH_CONFIG
ssh-keyscan -H "$REMOTE_HOST" > /workdir/.ssh/known_hosts
chmod 600 /workdir/.ssh/config /workdir/.ssh/known_hosts
mkdir -p .kamal mkdir -p .kamal
cat > .kamal/secrets <<'"'"'SECRETS'"'"' cat > .kamal/secrets <<'"'"'SECRETS'"'"'
@ -94,17 +109,15 @@ jobs:
SECRETS SECRETS
chmod 600 .kamal/secrets chmod 600 .kamal/secrets
REMOTE_HOST="${SSH_HOST:-89.167.35.217}" ssh -F /workdir/.ssh/config "$REMOTE_USER@$REMOTE_HOST" <<'"'"'REMOTE'"'"'
REMOTE_USER="${SSH_USER:-root}"
ssh "$REMOTE_USER@$REMOTE_HOST" <<'"'"'REMOTE'"'"'
set -eu set -eu
docker network inspect kamal >/dev/null 2>&1 || docker network create kamal docker network inspect bemeal_public >/dev/null 2>&1 || docker network create bemeal_public
docker network inspect bemeal_internal >/dev/null 2>&1 || docker network create bemeal_internal
for container in bemeal-pgsql bemeal-redis bemeal-meilisearch bemeal-adminer; do for container in bemeal-pgsql bemeal-redis bemeal-meilisearch bemeal-adminer; do
if docker inspect "$container" >/dev/null 2>&1; then if docker inspect "$container" >/dev/null 2>&1; then
docker network connect kamal "$container" >/dev/null 2>&1 || true docker network connect bemeal_internal "$container" >/dev/null 2>&1 || true
fi fi
done done
REMOTE REMOTE

View File

@ -4,15 +4,27 @@ image: daily_meal/bemeal-api
x-hosts: &hosts x-hosts: &hosts
- <%= ENV.fetch("SSH_HOST", "89.167.35.217") %> - <%= ENV.fetch("SSH_HOST", "89.167.35.217") %>
x-web-networks: &web-networks
network:
- bemeal_public
- bemeal_internal
x-worker-networks: &worker-networks
network:
- bemeal_internal
servers: servers:
web: web:
hosts: *hosts hosts: *hosts
options: *web-networks
horizon: horizon:
hosts: *hosts hosts: *hosts
cmd: php artisan horizon cmd: php artisan horizon
options: *worker-networks
scheduler: scheduler:
hosts: *hosts hosts: *hosts
cmd: php artisan schedule:work cmd: php artisan schedule:work
options: *worker-networks
proxy: proxy:
host: bemeal.leonmorival.com host: bemeal.leonmorival.com
@ -29,6 +41,7 @@ registry:
ssh: ssh:
user: <%= ENV.fetch("SSH_USER", "root") %> user: <%= ENV.fetch("SSH_USER", "root") %>
config: .ssh/config
builder: builder:
arch: amd64 arch: amd64

View File

@ -17,7 +17,7 @@ services:
timeout: 5s timeout: 5s
retries: 10 retries: 10
networks: networks:
- kamal - internal
redis: redis:
image: redis:alpine image: redis:alpine
@ -26,7 +26,7 @@ services:
volumes: volumes:
- redis-data:/data - redis-data:/data
networks: networks:
- kamal - internal
adminer: adminer:
image: adminer:latest image: adminer:latest
@ -35,7 +35,7 @@ services:
environment: environment:
ADMINER_DEFAULT_SERVER: bemeal-pgsql ADMINER_DEFAULT_SERVER: bemeal-pgsql
networks: networks:
- kamal - internal
meilisearch: meilisearch:
image: getmeili/meilisearch:latest image: getmeili/meilisearch:latest
@ -47,7 +47,7 @@ services:
volumes: volumes:
- meilisearch-data:/meili_data - meilisearch-data:/meili_data
networks: networks:
- kamal - internal
volumes: volumes:
pgsql-data: pgsql-data:
@ -61,6 +61,6 @@ volumes:
name: bemeal_meilisearch_data name: bemeal_meilisearch_data
networks: networks:
kamal: internal:
external: true external: true
name: kamal name: bemeal_internal