set users to host UId for convenience
This commit is contained in:
parent
96e9821448
commit
1bc7d4bb6f
13
Makefile
13
Makefile
@ -6,7 +6,7 @@
|
||||
# By: whaffman <whaffman@student.codam.nl> +#+ #
|
||||
# +#+ #
|
||||
# Created: 2025/05/12 15:33:56 by whaffman #+# #+# #
|
||||
# Updated: 2025/05/20 22:14:24 by whaffman ######## odam.nl #
|
||||
# Updated: 2025/05/22 10:06:24 by whaffman ######## odam.nl #
|
||||
# #
|
||||
# **************************************************************************** #
|
||||
|
||||
@ -19,7 +19,9 @@ DATA_DIR = ./data
|
||||
WORDPRESS_DATA_DIR = $(DATA_DIR)/wordpress
|
||||
MARIADB_DATA_DIR = $(DATA_DIR)/mariadb
|
||||
|
||||
DC = $(DOCKER_COMPOSE) -f $(DOCKER_COMPOSE_FILE) --env-file $(DOCKER_ENV_FILE) --project-name ""
|
||||
UID := $(shell id -u)
|
||||
|
||||
DC = $(DOCKER_COMPOSE) -f $(DOCKER_COMPOSE_FILE) --env-file $(DOCKER_ENV_FILE) --project-name ""
|
||||
|
||||
.PHONY: all build up down remove
|
||||
|
||||
@ -38,10 +40,10 @@ $(MARIADB_DATA_DIR):
|
||||
|
||||
build: $(WORDPRESS_DATA_DIR) $(MARIADB_DATA_DIR)
|
||||
@echo "$(gub)Building Docker containers...$(reset)"
|
||||
$(DC) build
|
||||
$(DC) build --build-arg HOST_UID=$(UID)
|
||||
up:
|
||||
@echo "$(gub)Starting Docker containers...$(reset)"
|
||||
$(DC) up -d --build
|
||||
$(DC) up -d
|
||||
|
||||
down:
|
||||
@echo "$(gub)Stopping Docker containers...$(reset)"
|
||||
@ -50,6 +52,9 @@ down:
|
||||
clean:
|
||||
@echo "$(gub)Cleaning up Docker containers...$(reset)"
|
||||
$(DC) down --rmi local --volumes --remove-orphans
|
||||
@rm -rf $(DATA_DIR)
|
||||
|
||||
|
||||
|
||||
logs:
|
||||
@echo "$(gub)Displaying logs...$(reset)"
|
||||
|
||||
@ -19,7 +19,7 @@ WP_THEME=impressionist
|
||||
|
||||
WP_USER=inception
|
||||
WP_USER_PASSWORD=42inception42
|
||||
WP_USER_EMAIL=inception@duinvoetje.nl
|
||||
WP_USER_EMAIL=inception2@duinvoetje.nl
|
||||
|
||||
|
||||
|
||||
|
||||
@ -1,28 +1,22 @@
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
mariadb:
|
||||
container_name: mariadb
|
||||
restart: always
|
||||
build:
|
||||
context: ./requirements/mariadb
|
||||
dockerfile: Dockerfile
|
||||
environment:
|
||||
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
build:
|
||||
context: ./requirements/mariadb
|
||||
dockerfile: Dockerfile
|
||||
networks:
|
||||
- docker-network
|
||||
volumes:
|
||||
- data_mariadb:/var/lib/mysql
|
||||
|
||||
restart: always
|
||||
|
||||
nginx:
|
||||
restart: always
|
||||
container_name: nginx
|
||||
environment:
|
||||
- DOMAIN_NAME=${DOMAIN_NAME}
|
||||
build:
|
||||
context: ./requirements/nginx
|
||||
dockerfile: Dockerfile
|
||||
@ -30,16 +24,18 @@ services:
|
||||
DOMAIN_NAME: ${DOMAIN_NAME}
|
||||
depends_on:
|
||||
- wordpress
|
||||
environment:
|
||||
- DOMAIN_NAME=${DOMAIN_NAME}
|
||||
ports:
|
||||
- '443:443'
|
||||
networks:
|
||||
- docker-network
|
||||
volumes:
|
||||
- data_wordpress:/var/www/html
|
||||
restart: always
|
||||
|
||||
wordpress:
|
||||
container_name: wordpress
|
||||
restart: always
|
||||
build:
|
||||
context: ./requirements/wordpress
|
||||
dockerfile: Dockerfile
|
||||
@ -48,30 +44,29 @@ services:
|
||||
environment:
|
||||
- DOMAIN_NAME=${DOMAIN_NAME}
|
||||
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
|
||||
- DB_HOST=${DB_HOST}
|
||||
- DB_PORT=${DB_PORT}
|
||||
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE}
|
||||
- MYSQL_USER=${MYSQL_USER}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
|
||||
|
||||
- WP_TITLE=${WP_TITLE}
|
||||
- WP_DESCRIPTION=${WP_DESCRIPTION}
|
||||
- WP_THEME=${WP_THEME}
|
||||
|
||||
- WP_ADMIN=${WP_ADMIN}
|
||||
- WP_ADMIN_PASSWORD=${WP_ADMIN_PASSWORD}
|
||||
- WP_ADMIN_EMAIL=${WP_ADMIN_EMAIL}
|
||||
|
||||
- WP_THEME=${WP_THEME}
|
||||
|
||||
- WP_USER=${WP_USER}
|
||||
- WP_USER_PASSWORD=${WP_USER_PASSWORD}
|
||||
- WP_USER_EMAIL=${WP_USER_EMAIL}
|
||||
|
||||
networks:
|
||||
- docker-network
|
||||
volumes:
|
||||
- data_wordpress:/var/www/html
|
||||
restart: always
|
||||
|
||||
|
||||
networks:
|
||||
|
||||
@ -10,9 +10,11 @@ RUN apk add --no-cache \
|
||||
mariadb-client && \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
ARG HOST_UID
|
||||
|
||||
# Create a new user and group
|
||||
RUN addgroup -S mariadb && \
|
||||
adduser -S mariadb -G mariadb
|
||||
RUN addgroup -S -g $HOST_UID mariadb && \
|
||||
adduser -S -u $HOST_UID mariadb -G mariadb
|
||||
|
||||
# Create the necessary directories
|
||||
RUN mkdir -p /var/run/mysqld && \
|
||||
|
||||
@ -1,5 +1,7 @@
|
||||
FROM alpine:3.20
|
||||
|
||||
ARG HOST_UID
|
||||
|
||||
# Install WordPress and its dependencies
|
||||
RUN apk add --no-cache \
|
||||
php83 \
|
||||
@ -19,7 +21,9 @@ RUN apk add --no-cache \
|
||||
rm -rf /var/cache/apk/*
|
||||
|
||||
# Add a new user and group
|
||||
RUN adduser -D -g 'wordpress' wordpress
|
||||
# Create group with GID = HOST_UID, then user with UID = HOST_UID and GID = HOST_UID
|
||||
RUN addgroup -g ${HOST_UID} wordpress && \
|
||||
adduser -D -u ${HOST_UID} -G wordpress wordpress
|
||||
|
||||
# Set ownership of the working directory
|
||||
RUN mkdir -p /var/www/html && \
|
||||
@ -34,6 +38,8 @@ COPY ./conf/www.conf /etc/php83/php-fpm.d/www.conf
|
||||
|
||||
RUN echo "memory_limit = 512M" >> /etc/php83/php.ini
|
||||
|
||||
|
||||
|
||||
# Copy and set permissions for the install script
|
||||
COPY ./tools/install.sh /usr/local/bin/install.sh
|
||||
RUN chmod +x /usr/local/bin/install.sh
|
||||
|
||||
@ -44,4 +44,6 @@ wp theme install --allow-root \
|
||||
|
||||
echo "WordPress installation completed."
|
||||
|
||||
chown -R wordpress:wordpress /var/www/html
|
||||
|
||||
exec "$@"
|
||||
Loading…
Reference in New Issue
Block a user