Rakuten-MySQL / Dockerfile
Demosthene-OR's picture
...
b3b948d
raw
history blame
1.52 kB
# Use the official Python 3.9 image as the base image
FROM python:3.10
# Set the working directory to /code
WORKDIR /code
# Copy the current directory contents into the container at /code
COPY ./requirements.txt /code/requirements.txt
# Install requirements.txt
RUN pip install --no-cache-dir --upgrade -r /code/requirements.txt
# Set up a new user named "user" with user ID 1000
RUN useradd -m -u 1000 user
# Switch to the "user" user
USER user
# Set home to the user's home directory
ENV HOME=/home/user \
PATH=/home/user/.local/bin:$PATH
# Set the working directory to the user's home directory
WORKDIR $HOME/app
# Copy the current directory contents into the container at $HOME/app setting the owner to the user
COPY --chown=user . $HOME/app
# Use the official MySQL image as a base image
FROM mysql:latest
# Définir le mot de passe root pour MySQL
ENV MYSQL_ROOT_PASSWORD=Rakuten
# Créer automatiquement une base de données au démarrage de MySQL
ENV MYSQL_DATABASE=rakuten_db
# Définir l'utilisateur root et son mot de passe
ENV MYSQL_USER=rakuten_admin@%
ENV MYSQL_PASSWORD=Rakuten
# Expose the MySQL port
EXPOSE 7860
# Copier le script SQL dans le conteneur
COPY ./script.sql /docker-entrypoint-initdb.d/
# Copier le script Python dans le conteneur
COPY ./mysql_connector_python.py /code/mysql_connector_python.py
# Démarrer le serveur MySQL
CMD ["mysqld"]
# Exécuter le script Python après le démarrage du serveur MySQL
CMD ["sh", "-c", "python /code/mysql_connector_python.py"]