Upload files to "/"

This commit is contained in:
2026-09-16 21:06:44 +02:00
parent bf6ad269c5
commit 7891aa394d
2 changed files with 119 additions and 66 deletions
+65 -22
View File
@@ -1,32 +1,75 @@
# Image de référence
# Only the instructions RUN, COPY, ADD create layers
# Reference image
FROM ubuntu:latest
# Données méta
LABEL org.opencontainers.image.title="Serveur Apache"
LABEL org.opencontainers.image.version="1"
LABEL org.opencontainers.image.revision="0"
LABEL environment="formation"
# Meta data (OCI standard)
LABEL org.opencontainers.image.title="My image"
LABEL org.opencontainers.image.description="My description"
LABEL org.opencontainers.image.authors="Pierre ROYER <mail@pierreau.fr>"
LABEL org.opencontainers.image.url="https://pierreau.fr/pro/"
LABEL org.opencontainers.image.version="2"
LABEL org.opencontainers.image.revision="1"
LABEL org.opencontainers.image.created="2016-11-28T15:00:00+02:00" # UTC+2 (rfc3339)
# Meta data (not standard)
LABEL Environment="production" Site="Nantes"
# Installing packages without interruption (Debian)
# ARG DEBIAN_FRONTEND=noninteractive
# Commands executed during image creation
# Change mirror source for best performances
RUN sed -i 's/ports.ubuntu.com/fr.ports.ubuntu.com/' /etc/apt/sources.list.d/ubuntu.sources
# Commandes exécuteés pendant la création de limage
RUN apt-get update && apt-get upgrade -y
RUN apt install -y apache2
RUN apt-get clean ; rm -rf /var/lib/apt/lists/*
RUN apt install -y --no-install-recommends \
apache2 \
cron \
curl \
openssh-server \
tzdata \
vim \
wget
# Configuration Apache
RUN echo 'ServerName apache.formation.fr:80' >> /etc/apache2/apache2.conf
# Remove unnecessary files to optimize image size
RUN apt clean ; rm -rf /var/lib/apt/lists/*
# Spécifier de répertoire courant
WORKDIR /var/www/html/
# Setup time zone
ENV TZ=Europe/Paris
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN dpkg-reconfigure --frontend noninteractive tzdata
# Copie du fichier host vers le conteneur
RUN mv index.html index.html.old
COPY index.html .
# Apache configuration
RUN echo 'ServerName apache.pierreau.fr:80' >> /etc/apache2/apache2.conf
# Commande lancée au démarrage du conteneur
# CMD ["/usr/sbin/apachectl", "-D", "FOREGROUND"]
# Copying files from host to container
# RUN cd /var/www/html/
# RUN mv index.html index.html.old
# COPY index.html /var/www/html/
# Vérifie l’état de santé (pour un serveur web)
# HEALTHCHECK --start-period=30s --interval=1m --timeout=2s --retries=5 CMD curl -f http://localhost/ || exit 1
# RUN wget https://cloud.pierreau.fr/index.html
# Port réseau utilisé
EXPOSE 80/tcp
# Allows adding URLs or archives
ADD https://cloud.pierreau.fr/index.html .
# Mount points created in container
VOLUME ["/var/www/html", "/etc/apache2", "/var/log/apache2/"]
# Adding a user
RUN useradd -m -s /bin/bash -p M0t2P@$$ sshuser
USER sshuser
# Specifies default directory
WORKDIR /home/sshuser
RUN echo "df -h" > .profile
USER root
# ENTRYPOINT command (not overridable by docker run) launched at container startup
# COPY docker-entrypoint.sh /root/
# RUN chmod 700 /root/docker-entrypoint.sh
# ENTRYPOINT ["/root/docker-entrypoint.sh"]
# Command (overloadable by docker run) launched when the container starts
CMD ["/usr/sbin/apachectl", "-D", "FOREGROUND"]
# For information purposes, specifies the ports/protocols used
EXPOSE 80 22/tcp 123/udp
+50 -40
View File
@@ -1,42 +1,52 @@
services:
netdata:
image: netdata/netdata
container_name: netdata
ports:
- 19999:19999
# PGID is obtained with: grep docker /etc/group | cut -d ':' -f 3
environment:
- PGID=120
memswap_limit: 256M
deploy:
resources:
reservations:
cpus: '0.2'
memory: 128M
limits:
cpus: '0.5'
memory: 256M
restart: on-failure
cap_add:
- SYS_PTRACE
security_opt:
- apparmor:unconfined
volumes:
- netdataconfig:/etc/netdata
- netdatalib:/var/lib/netdata
- netdatacache:/var/cache/netdata
- /var/run/docker.sock:/var/run/docker.sock:ro
- /etc/passwd:/host/etc/passwd:ro
- /etc/group:/host/etc/group:ro
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /etc/os-release:/host/etc/os-release:ro
version: '3.7'
volumes:
netdataconfig:
name: netdata-config
netdatalib:
name: netdata-lib
netdatacache:
name: netdata-cache
Postgres-Data:
name: Postgres-Data
services:
postgres:
image: postgres:latest
pull_policy: always
container_name: pierreau.postgres
hostname: postgres
restart: always
# ports:
# - "5432:5432"
expose:
- 5432
environment:
- POSTGRES_USER=PostgresUser
- POSTGRES_PASSWORD=PostgresPWD
- POSTGRES_DB=PostgresDBname
- TZ=Europe/Paris
volumes:
- Postgres-Data:/var/lib/postgresql/data
- /etc/localtime:/etc/localtime:ro
pgadmin:
image: dpage/pgadmin4
container_name: pierreau.pgadmin
depends_on:
- postgres
restart: on-failure
ports:
- "55320:80"
environment:
PGADMIN_DEFAULT_EMAIL: user@pierreau.fr
PGADMIN_DEFAULT_PASSWORD: SuperSecret
adminer:
image: adminer:latest
container_name: pierreau.adminer
depends_on:
- postgres
restart: on-failure
environment:
ADMINER_DEFAULT_DB_DRIVER: postgresql
ADMINER_DEFAULT_SERVER: pierreau.postgres
ADMINER_DEFAULT_DB_NAME: PostgresDBname
ADMINER_PLUGINS: dump-zip dump-bz2 dump-date
ADMINER_DESIGN: galkaev # nette
ports:
- "55321:8080"