diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml deleted file mode 100644 index 909e5df2e..000000000 --- a/docker/docker-compose.yml +++ /dev/null @@ -1,20 +0,0 @@ -version: "3.6" -services: - seerep: - image: ghcr.io/agri-gaia/seerep_server:latest - tty: true - container_name: seerep_server - ports: - # the gRPC port - - 9090:9090 - volumes: - # persist the data folder - - seerep-data:/mnt/seerep-data #using docker volume - #- /your/local/absolute/path:/mnt/seerep-data #using host folder - environment: - - TZ=Europe/Berlin - - SEEREP_DATA_FOLDER=/mnt/seerep-data/ - - SEEREP_LOG_PATH=/mnt/seerep-data/log - - SEEREP_LOG_LEVEL=info -volumes: - seerep-data: diff --git a/docker/server/.env b/docker/server/.env new file mode 100644 index 000000000..2eec66f5c --- /dev/null +++ b/docker/server/.env @@ -0,0 +1,6 @@ +SEEREP_DATA_FOLDER=/mnt/seerep_data/ +SEEREP_LOG_PATH=/mnt/seerep_data/log/ +SEEREP_LOG_LEVEL=info +TZ=Europe/Berlin +USER_ID=1000 +GROUP_ID=1000 diff --git a/docker/server/Dockerfile b/docker/server/Dockerfile index 4f0db09a0..800e16b76 100644 --- a/docker/server/Dockerfile +++ b/docker/server/Dockerfile @@ -1,9 +1,9 @@ -# base container with all necessary dependencies ARG IMAGEBASE ARG IMAGEBASETAG FROM $IMAGEBASE:$IMAGEBASETAG USER root + WORKDIR /seerep COPY certs src/certs/ @@ -13,7 +13,7 @@ COPY seerep_msgs src/seerep_msgs/ COPY seerep_ros src/seerep_ros/ COPY seerep_srv src/seerep_srv/ COPY examples src/examples/ -COPY docker/start_server.sh src/start_server.sh +COPY docker/server/start_server.sh src/start_server.sh RUN /bin/bash -c "source /opt/ros/noetic/setup.bash; catkin config --cmake-args -DCMAKE_BUILD_TYPE=Release; catkin build" diff --git a/docker/server/docker-compose.yml b/docker/server/docker-compose.yml new file mode 100644 index 000000000..e91ff3bbd --- /dev/null +++ b/docker/server/docker-compose.yml @@ -0,0 +1,26 @@ +services: + change_vol_ownership: + image: alpine:3.19 + user: root + volumes: + - seerep_data:${SEEREP_DATA_FOLDER} + - seerep_log:${SEEREP_LOG_PATH} + command: chown -R ${USER_ID}:${GROUP_ID} ${SEEREP_DATA_FOLDER} ${SEEREP_LOG_PATH} + seerep: + image: ghcr.io/agri-gaia/seerep_base:latest + user: "${USER_ID}:${GROUP_ID}" + tty: true + container_name: seerep_server + env_file: + .env + ports: + - 9090:9090 + volumes: + - seerep_data:${SEEREP_DATA_FOLDER} + - seerep_log:${SEEREP_LOG_PATH} + depends_on: + change_vol_ownership: + condition: service_completed_successfully +volumes: + seerep_data: + seerep_log: diff --git a/docker/start_server.sh b/docker/server/start_server.sh similarity index 100% rename from docker/start_server.sh rename to docker/server/start_server.sh