Browse Source

fetch https://git.yoqi.me/lyq-docker/docker-mysql/ to mysql

heavyrain 3 months ago
parent
commit
ac7d72cd0f

+ 13 - 0
mysql/.dockerignore

@@ -0,0 +1,13 @@
+node_modules
+npm-debug.log
+Dockerfile*
+docker-compose*
+.dockerignore
+.git
+.gitignore
+.env
+*/bin
+*/obj
+README.md
+LICENSE
+.vscode

+ 12 - 0
mysql/README.md

@@ -0,0 +1,12 @@
+# docker-mysql
+
+mysql分为 msyql 和 mariadb 分支。所以分别构建了两个镜像。
+
+```
+docker run -d -p 13306:3306 qhedu/mariadb:1.0 /root/run.sh
+
+```
+或者:
+```
+docker-compose up
+```

+ 24 - 0
mysql/mariadb/Dockerfile

@@ -0,0 +1,24 @@
+#使用的基础镜像
+FROM daocloud.io/library/centos:centos7
+
+RUN yum -y install mariadb-server
+
+ENV MARIADB_USER root
+ENV MARIADB_PASS 123456
+#让容器支持中文
+ENV LC_ALL en_US.UTF-8
+
+#初始化数据库
+ADD db_init.sh /root/db_init.sh
+RUN chmod 775 /root/db_init.sh
+RUN /root/db_init.sh
+
+#导出端口
+EXPOSE 3306
+
+#添加启动文件
+ADD run.sh /root/run.sh
+RUN chmod 775 /root/run.sh
+
+#设置默认启动命令
+CMD ["/root/run.sh"]

+ 12 - 0
mysql/mariadb/db_init.sh

@@ -0,0 +1,12 @@
+#!/bin/bash
+
+mysql_install_db --user=mysql
+sleep 3
+mysqld_safe &
+sleep 3
+#mysqladmin -u "$MARIADB_USER" password "$MARIADB_PASS"
+mysql -e "use mysql; grant all privileges on *.* to '$MARIADB_USER'@'%' identified by '$MARIADB_PASS' with grant option;"
+h=$(hostname)
+mysql -e "use mysql; update user set password=password('$MARIADB_PASS') where user='$MARIADB_USER' and host='$h';"
+mysql -e "flush privileges;"
+run.sh

+ 10 - 0
mysql/mariadb/docker-compose.debug.yml

@@ -0,0 +1,10 @@
+version: '2.1'
+
+services:
+  mariadb:
+    image: qhedu/mariadb:1.0
+    build:
+      context: .
+      dockerfile: Dockerfile
+    ports:
+      - 3000:3000

+ 8 - 0
mysql/mariadb/docker-compose.yml

@@ -0,0 +1,8 @@
+version: '2.1'
+
+services:
+  mariadb:
+    image: qhedu/mariadb:1.0
+    build: .
+    ports:
+      - 3000:3000

+ 2 - 0
mysql/mariadb/run.sh

@@ -0,0 +1,2 @@
+#!/bin/bash
+mysqld_safe

+ 24 - 0
mysql/mysql/Dockerfile

@@ -0,0 +1,24 @@
+#使用的基础镜像
+FROM daocloud.io/library/centos:centos7
+
+RUN yum -y install mysql-server
+
+ENV MYSQL_USER root
+ENV MYSQL_PASS 123456
+#让容器支持中文
+ENV LC_ALL en_US.UTF-8
+
+#初始化数据库
+ADD db_init.sh /root/db_init.sh
+RUN chmod 775 /root/db_init.sh
+RUN /root/db_init.sh
+
+#导出端口
+EXPOSE 3306
+
+#添加启动文件
+ADD run.sh /root/run.sh
+RUN chmod 775 /root/run.sh
+
+#设置默认启动命令
+CMD ["/root/run.sh"]

+ 12 - 0
mysql/mysql/db_init.sh

@@ -0,0 +1,12 @@
+#!/bin/bash
+
+mysql_install_db --user=mysql
+sleep 3
+mysqld_safe &
+sleep 3
+#mysqladmin -u "$MARIADB_USER" password "$MARIADB_PASS"
+mysql -e "use mysql; grant all privileges on *.* to '$MARIADB_USER'@'%' identified by '$MARIADB_PASS' with grant option;"
+h=$(hostname)
+mysql -e "use mysql; update user set password=password('$MARIADB_PASS') where user='$MARIADB_USER' and host='$h';"
+mysql -e "flush privileges;"
+run.sh

+ 10 - 0
mysql/mysql/docker-compose.debug.yml

@@ -0,0 +1,10 @@
+version: '2.1'
+
+services:
+  mysql:
+    image: qhedu/mysql:1.0
+    build:
+      context: .
+      dockerfile: Dockerfile
+    ports:
+      - 3000:3000

+ 8 - 0
mysql/mysql/docker-compose.yml

@@ -0,0 +1,8 @@
+version: '2.1'
+
+services:
+  mysql:
+    image: qhedu/mysql:1.0
+    build: .
+    ports:
+      - 3000:3000

+ 20 - 0
mysql/mysql/docker-compose2.yml

@@ -0,0 +1,20 @@
+version: '3.1'
+services:
+  mysql:
+    restart: always
+    image: mysql:5.6
+    container_name: mysql
+    ports:
+      - 3306:3306
+    environment:
+      TZ: Asia/Shanghai
+      MYSQL_ROOT_PASSWORD: 123456
+    command:
+      --character-set-server=utf8mb4
+      --collation-server=utf8mb4_general_ci
+      --explicit_defaults_for_timestamp=true
+      --lower_case_table_names=1
+      --max_allowed_packet=128M
+      --sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO"
+    volumes:
+      - /usr/local/docker/mysql/mysql-data:/var/lib/mysql

+ 2 - 0
mysql/mysql/run.sh

@@ -0,0 +1,2 @@
+#!/bin/bash
+mysqld_safe