docker run --name mysql --rm -d -p 3306:3306 -v C:\MySQL\data:c:\mysql\data albert0i/mysql:5.7.28-nanoserver-1909
docker exec -it mysql cmd
mysql -u root -p
CREATE USER 'root'@'%' IDENTIFIED BY 'password123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FROM mcr.microsoft.com/windows/nanoserver:1909
ENV PATH=C:\\Windows\\system32;C:\\Windows;C:\\mysql;C:\\mysql\\bin
# running in one like to keep the layer and size down
RUN MKDIR c:\temp && cd c:\temp && \
curl.exe -o mysql-5.7.28-winx64.zip -L https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.28-winx64.zip && \
tar.exe -xf c:\temp\mysql-5.7.28-winx64.zip -C c:\temp && \
MOVE c:\temp\mysql-5.7.28-winx64 c:\ && \
REN c:\mysql-5.7.28-winx64 mysql && \
CD C:\ && \
RD /S /Q C:\temp && \
MKDIR c:\mysql\data && \
ECHO [mysqld] > c:\mysql\my.ini && \
ECHO basedir=C:\\mysql >> c:\mysql\my.ini && \
ECHO datadir=C:\\mysql\\data >> c:\mysql\my.ini && \
ECHO bind-address=0.0.0.0 >> c:\mysql\my.ini && \
ECHO ALTER USER 'root'@'localhost' IDENTIFIED BY 'root'; > c:\mysql\mysql-init.txt && \
mysqld.exe --initialize --init-file=c:\\mysql\\mysql-init.txt --console
# in case you have a specifig conf file you need
#COPY my.ini C:\mysql
# the default port
EXPOSE 3306
CMD mysqld.exe --console
EOF (2022/04/21)
Content type
Image
Digest
Size
471.6 MB
Last updated
over 4 years ago
docker pull albert0i/mysql:5.7.28-nanoserver-1909