Tag: mariadb

ER_HOST_NOT_PRIVILEGED – docker容器无法连接到mariadb

我试图让docker容器与mariadb和node.js图像一起工作。 容器将使用/home/mysql的现有数据库。 但是,当容器启动,我得到这个“失败连接”错误在node.js: Error: ER_HOST_NOT_PRIVILEGED: Host '172.18.0.5' is not allowed to connect to this MariaDB server 这是我的docker-compose.yml: version: '3' services: mariadb: image: mariadb restart: always volumes: – /home/mysql:/var/lib/mysql user: "mysql" ports: – "3306:3306" watch: build: . restart: always links: – mariadb:mysql environment: – DOCKER_IP=172.18.0.2 depends_on: ['mariadb'] ports: – "3000:3000" 读完这个线程之后 ,我发现mysql实际上正在运行,但是不能让其他服务连接: 这些是我查过的一些步骤。 正如你所看到的,我可以login到MySQL实例: $ docker […]

系统重新启动后,Mariadb会丢失数据

使用以下docker-compose.yml文件 version: '2' services: wordpress: image: wordpress ports: – 8080:80 environment: WORDPRESS_DB_NAME: my_db WORDPRESS_DB_USER: root WORDPRESS_DB_PASSWORD: password volumes: – ./src:/var/www/html mysql: image: mariadb environment: MYSQL_ROOT_PASSWORD: password 我运行命令docker-compose up ,安装WP,然后向WP添加了几个post。 但重新启动我的系统后,一切损失,我再次需要修复数据库。 我怎么能保存数据库,就像我已经保存在./src文件夹中的代码?

如何在Docker中使用MariaDB?

我试图设置一个MariaDB容器在Docker中使用,但我似乎做错了什么。 我开始下载,然后用这个命令运行它: docker run -p 127.0.0.1:8002:80 –name some-mariadb -e MYSQL_ROOT_PASSWORD=my-secret-pw -vc:/mysql -d mariadb:latest 它下载一个运行容器。 然后我尝试运行这个SQL命令: docker exec -it some-mariadb mysql -p -e 'select * from my_table' my_db 它给了我MySql的使用信息…我不明白我在做什么错了? 我在Windows机器上这样做,如果这有所作为。

在Java中使用Docker环境variables

我正在创build一个位于Docker容器内的Spring Boot应用程序。 在与Spring Boot容器相同的服务器上,是第二个Docker容器,它包含一个MariaDB应用程序必须能够访问的MariaDB。 当运行MariaDB容器和主机上的Spring Boot应用程序时,应用程序通过“jdbc:mariadb:// localhost:3306 / fi?user = username&password = somepassword”访问数据库。 我明白,当应用程序部署为一个容器,它不能这样做。 我通过在run语句中包含“–link mariadb:db”来成功“链接”两个容器,其中mariadb是MariaDB容器的名称。 当应用程序容器正在运行时,我可以通过运行命令“ping mariadb”来ping MariaDB容器。 我的问题是,我将如何使用我的Java文件内的mariadb环境variables调用mariadb容器中的数据库? 谢谢。

为什么在运行docker容器之后,mysql数据所有权会更改为systemd-journal-remote

我有mysql数据库存储在/home/mysql而不是/var/lib/mysql 。 这个目录曾经被mysql拥有。 但是,当我运行命令docker-compose up这个yml文件: version: '3' services: mariadb: image: mariadb restart: always volumes: – /home/mysql:/var/lib/mysql elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:5.6.4 environment: – "ES_JAVA_OPTS=-Xms750m -Xmx750m" – bootstrap.memory_lock=false site: build: . volumes: – "./app:/app" links: – mariadb:mysql environment: – DOCKER_IP=172.19.0.2 depends_on: ['elasticsearch','mariadb'] ports: – "3000:3000" Docker容器能够运行,但是/home/mysql中的整个文件夹和文件都由systemd-journal-remote ,这导致node服务器无法连接到mariadb 。 我必须停止ib_logfile0实例,恢复mysql文件夹的所有权并删除ib_logfile0和ib_logfile1 。 为什么mount /home/mysql会导致这样一个致命的问题? 更新: 我的解决scheme是添加user: "mysql" : version: '3' […]

从另一个Docker访问一个Docker中的MariaDB

我有两个Docker容器。 一个是基于标准的MariaDB映像。 容器被命名为“mariadb”,其中一个数据库名为“fi”。 在这个文件里面有几个表格,每个表格都有几行数据。 使用DataGrip或任何其他数据库查看软件,我可以成功地访问和查询这个数据库使用端口3306在本地主机上调用它。 我的第二个Docker容器运行一个Spring Boot应用程序,它需要访问MariaDB中的数据。 如果我在Docker中运行MariaDB,并在主机上运行Spring Boot应用程序,我可以使用连接string成功访问docker中的MariaDB:“jdbc:mariadb:// localhost:3306 /?user = myUsername&password = myPassword ”。 我的问题是,当我尝试在不同的Docker中运行它们时,Spring Boot应用程序无法访问数据库。 我发现很多人说“连接”这两个docker工人,但这似乎并没有解决问题。 当我运行Spring Boot docker时,我执行命令“docker run -i -p 8080:8080 – 链接mariadb:db javaImage / bin / bash”。 由于与此问题无关的原因,我正在发布8080端口。 从我所了解的情况来看,他们现在应该是我的Spring Boot docker中的一个环境variables,可以用关键字“db”访问,这个环境variables将被MariaDB泊坞窗的实际ip所替代。 到目前为止,在我的Java代码中,使用连接string“jdbc:mariadb:// db:3306 / fi?user = myUsername&password = myPassword”来连接(或者很好地尝试)。 这将返回错误“无法连接:未知的数据库'fi'”,这是奇怪的,因为如果这个连接是真正连接到MariaDB泊坞窗,fi数据库将被发现。 任何帮助表示赞赏。 谢谢! 编辑:代码片段 Connection connection = DriverManager.getConnection("jdbc:mariadb://mariadb:3306/fi?user=myUsername&password=myPassword"); Statement stmt […]

无法在Dockerfile中构buildmariaDB基础

我目前被封锁,我想build立一个数据库,当我build立一个Dockerfile。 但是我得到一个错误,我不明白为什么。 谢谢你的帮助。 在这里我的Dockerfile FROM mariadb:latest WORKDIR /sql-files ADD sql/ /sql-files/ ENV MYSQL_ROOT_PASSWORD test123 ENV MYSQL_DATABASE testDB ENV MYSQL_USER toto ENV MYSQL_PASSWORD test123 RUN apt-get update && apt-get -y install vim && chmod +x insertDB.sh && sh insertDB.sh EXPOSE 3306 在这里我的insertDB.sh #!/bin/sh /usr/bin/mysqld_safe –skip-grant-tables & sleep 5 mysql –user=$MYSQL_USER –password=$MYSQL_PASSWORD $MYSQL_DATABASE < test.sql 和finaly我的test.sql脚本 CREATE […]

用MySQL / MariaDB数据库创build一个Docker容器

我打算将我的应用程序堆栈迁移到Docker。 让我来描述一下我目前使用的服务: HAProxy ,用于所有服务的连接(HTTP和原始TCP连接)上的SSL终止,并将stream量转发到下面的服务。 Nginx ,提供静态文件,如更新和一些信息页面。 运行主应用程序的Node.js。 MySQL(MariaDB) ,由所有应用程序使用和共享的数据库。 我的问题是关于数据库。 在这种情况下运行MariaDB的正确方法是什么? 安装和运行它在我的容器,以及其他服务? 在一个单独的容器中运行官方映像 ,并使用Docker run命令的–link选项将我的容器链接到它? 第一个select是否有缺点? TeamSpeakdocker集装箱使用第二个选项,这就是让我质疑自己关于在我的情况下运行数据库的正确方式,但我特别感觉更倾向于打包在我自己的图像中的所有服务。

Docker + MariaDB连接

我有一个magent2dockerVM运行 – 一切运行良好。 唯一的问题是我似乎无法弄清楚如何通过Sequel Pro与数据库相结合… 我使用nginx / php7.0 / mariaDB图像与Dinghy / Docker / Virtualbox。 相当新的docker,所以如果你能给我一个通过续集亲手连接数据库将不胜感激。 谢谢

Docker组成链接到mariaDB

我正在尝试使用mariaDB docker-compose创build一个运行php7 , nginx和mariaDB的基本开发机器。 我撰写文件的精简版本如下: wwwroot: container_name: wwwroot image: wwwroot volumes: – .:/var/www restart: always nginx: container_name: nginx image: nginx links: – php70 volumes_from: – wwwroot ports: – "80:80" – "443:443" restart: always php70: container_name: php70 image: kreable/php70 volumes_from: – wwwroot links: – mariadb restart: always mariadb: container_name: mariadb image: mariadb environment: DB_ADMIN_PASS: pass ports: […]