- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我打算在 Dockerfile 中创建一个基于 mariadb 的数据库,但失败了。Dockerfile内容如下:
FROM mariadb
RUN mysql -uroot --password="test" -e "CREATE DATABASE IF NOT EXISTS mymariadb;"
然后,当我使用命令 docker build -t testdb 构建自定义镜像时。它失败并出现以下错误:
docker@docker-virtual-machine:~$ docker build -t tttt .
Sending build context to Docker daemon 32.26kB
Step 1/2 : FROM mariadb
---> 2bdd97ca79d9
Step 2/2 : RUN mysql -uroot --password="test" -e "CREATE DATABASE IF NOT EXISTS mymariadb;"
---> Running in 80339dc97c2e
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
The command '/bin/sh -c mysql -uroot --password="test" -e "CREATE DATABASE IF NOT EXISTS mymariadb;"' returned a non-zero code: 1
docker@docker-virtual-machine:~$
然后我按照@Sebastian的建议但发现数据库没有创建,详细信息如下:
docker@docker-virtual-machine:~/test$ ls
Dockerfile init.sql
docker@docker-virtual-machine:~/test$ cat init.sql
CREATE DATABASE IF NOT EXISTS mydb;
docker@docker-virtual-machine:~/test$
docker@docker-virtual-machine:~/test$ cat Dockerfile
FROM mariadb
COPY init.sql /docker-entrypoint-initdb.d/
CMD ["mysqld"]
docker@docker-virtual-machine:~/test$ docker build -t mydb .
Sending build context to Docker daemon 3.072kB
Step 1/3 : FROM mariadb
---> 2bdd97ca79d9
Step 2/3 : COPY init.sql /docker-entrypoint-initdb.d/
---> 59fa0f173d93
Step 3/3 : CMD ["mysqld"]
---> Running in e605ae1fda5b
Removing intermediate container e605ae1fda5b
---> 94b98e45dc05
Successfully built 94b98e45dc05
Successfully tagged mydb:latest
docker@docker-virtual-machine:~/test$ docker run -p 3306:3306/tcp -v /my/own/dat adir1:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=test123 mydb
2019-01-26 17:30:21 0 [Note] mysqld (mysqld 10.3.12-MariaDB-1:10.3.12+maria~bion ic) starting as process 1 ...
2019-01-26 17:30:21 0 [Note] InnoDB: Using Linux native AIO
2019-01-26 17:30:21 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtin s
2019-01-26 17:30:21 0 [Note] InnoDB: Uses event mutexes
2019-01-26 17:30:21 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2019-01-26 17:30:21 0 [Note] InnoDB: Number of pools: 1
2019-01-26 17:30:21 0 [Note] InnoDB: Using SSE2 crc32 instructions
2019-01-26 17:30:21 0 [Note] InnoDB: Initializing buffer pool, total size = 256M , instances = 1, chunk size = 128M
2019-01-26 17:30:21 0 [Note] InnoDB: Completed initialization of buffer pool
2019-01-26 17:30:21 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
2019-01-26 17:30:21 0 [Note] InnoDB: 128 out of 128 rollback segments are active .
2019-01-26 17:30:21 0 [Note] InnoDB: Creating shared tablespace for temporary ta bles
2019-01-26 17:30:21 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Phys ically writing the file full; Please wait ...
2019-01-26 17:30:21 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
2019-01-26 17:30:21 0 [Note] InnoDB: 10.3.12 started; log sequence number 163095 0; transaction id 21
2019-01-26 17:30:21 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ ib_buffer_pool
2019-01-26 17:30:21 0 [Note] Plugin 'FEEDBACK' is disabled.
2019-01-26 17:30:21 0 [Note] InnoDB: Buffer pool(s) load completed at 190126 17: 30:21
2019-01-26 17:30:21 0 [Note] Server socket created on IP: '::'.
2019-01-26 17:30:21 0 [Warning] 'proxies_priv' entry '@% root@566af8cb98ef' igno red in --skip-name-resolve mode.
2019-01-26 17:30:21 0 [Note] Reading of all Master_info entries succeded
2019-01-26 17:30:21 0 [Note] Added new Master_info '' to hash table
2019-01-26 17:30:21 0 [Note] mysqld: ready for connections.
Version: '10.3.12-MariaDB-1:10.3.12+maria~bionic' socket: '/var/run/mysqld/mysq ld.sock' port: 3306 mariadb.org binary distribution
最佳答案
官方 MariaDB 镜像使用 CMD ["mysqld"]
而不是 RUN mysql
。所以
FROM mariadb
COPY ./my-initial.sql /docker-entrypoint-initdb.d/
CMD ["mysqld"]
应该可以解决问题。
要执行初始 SQL,请参阅 this section图像文档。
关于mysql - 自定义 docker 官方 mariadb 镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54360595/
我在 CentOS 6.4 上运行 MariaDB (10.0.2-MariaDB) 并且想使用 MariaDB 的 CONNECT-Engine 从一些日志文件中读取。由于日志文件很大,我用两个 C
MariaDB 是否支持嵌套事务(不是保存点)? 我希望能够在存储过程中使用嵌套事务。目前在 MySQL 中,我将一个参数“useTransaction”传递给每个存储过程,它控制我是否在该存储过程的
MariaDb 的默认端口是什么? 我是编程新手。我正在创建我的第一个连接到 MariaDB 的 Java 应用程序。我需要指定数据库端口。 最佳答案 Mariadb 的默认端口是 3306。 它与
ubuntu:~$ sudo apt-get install mariadb-server Reading package lists... Done Building dependency tr
我在Ubuntu 18.04上使用的是Mariadb 10.4.10,工具客户端是DBeaver 6.2.5 我想充分利用 Mariadb 中的约束检查功能来确保数据完整性,因为它是从 10.2.1
当我在 phpmyadmin 中运行这个 sql 时 SELECT @@SQL_MODE, @@GLOBAL.SQL_MODE; 表明 @@SQL_MODE STRICT_TRANS_TABLES,E
我正在尝试使用 MariaDB 10.1.12 的联合引擎来创建基于远程数据库中的表的表。关注MariaDB instructions关于如何使用 FederatedX 实现,在数据库 db1 中我创
我在该数据库中有此列,其中包含空格键,我想更改它。 ALTER TABLE . CHANGE COLUMN `Anzahl Personen` AnzahlPersonen int(11); 在命令行
我正在尝试安装 maria db 并遇到以下问题。 [root@localhost ~]# service mysqld start Redirecting to /bin/systemctl sta
我已经基于 mariadb:10.1 构建了一个图像这基本上添加了一个新的 cluster.conf但是在第一个节点开始成功工作后,在第二个节点上面临以下错误。有人可以帮我在这里调试吗? 错误日志尾部
我已阅读 the docs用于 MariaDB REGEX_REPLACE但无法让我的查询工作。我将链接存储在一列中,link并想更改链接的结尾: 来自 www.example.com/至 www.e
我在 MariaDB 的 ColumnStore 上发现的每一项分析都声称它使用的磁盘空间比 InnoDB 等常规引擎少,例如:https://www.percona.com/blog/2017/03
如何在 MariaDB 中重置密码?我使用 Windows 而不是 Linux。谁知道如何重置我的 MySQL MariaDB 密码?我尝试在 Google 上搜索但没有帮助。 最佳答案 我遇到了同样
我正在尝试将 Quarkus 与 MariaDB 图像一起用于测试。 使用 mvn integration-test 启动测试时,我得到以下信息: Unable to start devservice
我正在尝试更新存储在 MariaDB 的 json 列中的数据(libmysql 版本 - 5.6.43,服务器:10.3.34-MariaDB-cll-lve - MariaDB 服务器)。 我的数
我有一个使用 MariaDB 中的表定义的多对多关系。我正在尝试将 Entity Framework Core 中的导航属性用于相关实体,但它们没有水合。 roles | role_id | role
Entity Framework Core 是否支持 MariaDB? 我看到它不在 supported providers 的列表中,但 MySQL 是。也许 MySQL 提供程序会针对 Maria
我在 MariaDb (10.4.10-MariaDB-1:10.4.10+maria~bionic) 中有一个巨大的表,我正在使用添加一个新列 alter table Appointment add
有没有一种方法可以监听 MySQL/MariaDB 中的数据库更改,就像您可以跟踪 MongoDB oplog 一样?我在网上找不到关于此的信息。也许它只适用于 Postgres 而不适用于 MySQ
我刚刚在 Centos 7 中安装了 MariaDB 10.3 数据库服务器。 一切顺利,但在执行“systemctl status mariadb”命令时。这是完整的输出: root@vps [/e
我是一名优秀的程序员,十分优秀!