Tag: mysql

docker工人运行mysql的最佳方式

我是新的docker工人,我有两个微服务在两个容器中运行,我想为他们创build简单的数据库。 我是这样创build的: docker run –net=kajsnetwork -d -e MYSQL_ROOT_PASSWORD='mypassword' -v /storage/mysql1/mysql-datadir:/var/lib/mysql mysql 我进入容器使用 docker exec -it containernumber /bin/bash 然后我创build数据库…但是,当我去/ var / lib / mysql的主机上我没有没有什么新的 – 没有数据库,我从docker文件创build。 我有什么问题吗? 我想有数据库存储在主机上的数据,但运行在docker集装箱(这是很好的解决scheme?)? 如何正确地做到这一点?

docker-compose中的MySQL – 访问被拒绝

我尝试用docker-compose启动MySQL服务器。 这里是docker-compose.yaml部分: mysql: restart: always image: mysql:latest ports: – "3306:3306" volumes: – /Users/user/Documents/.docker/mysql/config:/etc/mysql/ – /Users/user/Documents/.docker/mysql/data:/var/lib/mysql environment: – MYSQL_ROOT_PASSWORD='123' – MYSQL_ROOT_HOST='172.18.0.1' 你看我已经指定了root密码和主机,就像这里所说的那样。 然后我尝试连接到数据库(使用Intellij Idea如果重要): jdbc:mysql://localhost:3306/?user=root&password=123&ssl=false 但它不接受凭据并写入日志: Access denied for user 'root'@'172.18.0.1' (using password: YES) 请告知如何解决它。 谢谢。

Docker + Django + MySQL – 非本地分区表的列表结束

我试图用Django和MySQL数据库使用Docker,但不幸的是,在docker-compose up在某些时候,它停止在End of list of non-natively partitioned tables我的服务器不启动。 当我使用我的应用程序没有Docker它的作品。 任何build议有什么不对? 我docker-compose.yml : web: build: . command: python manage.py runserver 0.0.0.0:8000 volumes: – .:/code ports: – "8000:8000" db: image: mysql environment: – MYSQL_ALLOW_EMPTY_PASSWORD=yes – MYSQL_USER=root – MYSQL_DATABASE=pri Dockerfile : FROM python:3 ENV PYTHONUNBUFFERED 1 RUN mkdir /code WORKDIR /code ADD requirements.txt /code/ RUN pip install -r […]

在Docker容器上运行PHINX迁移时发生PDO连接错误

我试图从我的主机(OSX Sierra)使用Phinx进行迁移,但是我不断收到PDO连接错误。 这是一个简单的LAMP堆栈,否则工作正常。 这是我的docker组成: version: '2' services: apache: build: context: ./docker/apache-php7 dockerfile: Dockerfile volumes: – ./app:/var/www ports: – "80:80" – "443:443" networks: – localnet links: – mysql mysql: image: mysql:5.7 ports: – "3306:3306" environment: MYSQL_ROOT_PASSWORD: "root" MYSQL_DATABASE: "root" MYSQL_USER: "root" MYSQL_PASSWORD: "root" volumes: – ./db/mysql:/var/lib/mysql networks: – localnet networks: localnet: driver: "bridge" volumes: mysqldata: driver: […]

Docker容器在本地连接到MySQL数据库 – >redirect到另一个容器

我是Docker的新手。 我已经读过,最好每个容器保持一个应用程序。 我需要运行Web应用程序(LAMP堆栈)。 所以我find了运行PHP + Apache的容器。 现在我需要build立一个MySQL容器。 但是我不确定什么是正确的做法。 我读了可以将多个容器连接在一起。 当它尝试连接到本地mysql数据库时,它的想法是让它运行PHP + Apache的容器。 但将所有本地连接redirect到另一个容器。 我的另一个想法是提供环境variables与主机在哪里应该所有的连接去。 在这种情况下,我需要有公共可访问的MySQL服务器,但我需要保持私有和只能在本地访问。 你可以请build议一个更好的select在我的情况下select? 谢谢

从java docker容器连接到percona docker

我知道有很多类似的问题,但他们都不是我想要的。 我跟着这个,因为我特别需要5.5,至less现在。 我的Java项目(访问MySQL)是在我build造的容器中 docker build -t projectname-testing . Dockerfile是非常标准的,它只是复制一个内置的压缩​​包,并将其提取到特定的文件夹。 CMD是一个shell脚本run_dev_server.sh ,它只是用devconfiguration启动服务器,而不是生产环境。 我使用链接中给出的命令创build了percona泊坞窗容器 docker run –name projectname-mysql-server -e MYSQL_ROOT_PASSWORD="" -d percona:5.5 所以现在我看到它的方式,只需要链接中提到的两个链接: docker run -p 3306:3306 –name projectname-local –link projectname-mysql-server projectname-testing 这给了我 docker: Error response from daemon: Cannot link to a non running container: /projectname-mysql-server AS /projectname-local/projectname-mysql-server. ERRO[0000] error getting events from daemon: net/http: request canceled […]

mysql的容器坏了,如何恢复数据?

我们的IT打破了MySQL容器,现在无法启动。 我明白,我可以提交一个新版本,并运行它没有入口点,所以我可以“exec -it”进入并检查是什么错误。 但我怎样才能恢复我的数据? 检查旧的容器,并从安装的卷复制所有文件? (这似乎是一个矫枉过正的问题,我可以'启动'我的容器没有入口点?) 这个问题最好的做法是什么?

在一个依赖于mysql容器的python容器中运行alembic

我有一个项目,我使用以下docker-compose.yml文件: version: '3' services: python: restart: always build: ./budget/dockerfiles/python/ ports: – "5000:5000" links: – db depends_on: – db volumes: – ./budget/:/app:z entrypoint: – python – -u – /app/run.py db: build: ./budget/dockerfiles/mysql/ environment: MYSQL_ROOT_PASSWORD: rainmakers MYSQL_DATABASE: forecast MYSQL_USER: rain MYSQL_PASSWORD: rainmakers volumes: – ./Dump.sql:/db/Dump.sql:z – ./Dump_Test.sql:/db/Dump_Test.sql:z – ./big_fc.sql:/db/big_fc.sql:z ports: – "3306:3306" 我也有以下alembi.ini文件: # A generic, single […]

未安装Docker PDO驱动程序上的PHP 7.1 – 已validation它在映像上

我总是得到一个PDO driver not found的错误。 我试过重新启动,直接安装PDO扩展。 请注意,这个docker安装程序昨晚在我的Linux上运行。 唯一不同的是,我从头开始做了比较,在我的Windows上我已经有图像。 最初得到错误后,我试图删除图像,基地的PHP图像由于某种原因未能删除。 然后我跑了: docker exec -it php sh docker-php-ext-install pdo pdo_mysql 运行该命令说明已经安装了扩展。 但我仍然收到错误。 我也注意到这是与模块一起出现的: /var/www/html # ls /usr/local/etc/php/conf.d/ docker-php-ext-pdo_mysql.ini /var/www/html # cat /usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini extension=pdo_mysql.so DockerFile PHP FROM php:7.1-fpm-alpine RUN apk update \ && docker-php-ext-install pdo pdo_mysql \ && chown -R www-data:www-data /var/www/html \ && sed -ri 's/^www-data:x:82:82:/www-data:x:1000:50:/' /etc/passwd Docker容器上的PHP模块 […]

使用Python从Docker容器中获取MYSQL_TCP_ADDR?

所以我有一个困境。 我做了一个Flask应用程序,当人们login到应用程序时,它使用一个mysql数据库来存储用户名和密码。 我的问题是,有没有一种dynamic的方式来获取我的Python代码中的TCP端口地址它自己? 我现在正在做的只是硬编码的path如下所示: app.config['MYSQL_DATABASE_USER'] = 'root' app.config['MYSQL_DATABASE_PASSWORD'] = '' app.config['MYSQL_DATABASE_DB'] = 'UserList' app.config['MYSQL_DATABASE_HOST'] = '172.17.0.3' 但我想要的是使主机dynamic,所以如果我build立另一个MySQL容器,我不会每次手动更改IP。 我知道你可以做这个命令, env | grep MYSQL MYSQL_PORT_5123_TCP_ADDR=172.17.0.3 MYSQL_ENV_MYSQL_ROOT_PASSWORD=test MYSQL_PORT_5123_TCP=tcp://172.17.0.3:5123 MYSQL_PORT_5123_TCP_PROTO=tcp MYSQL_ENV_GOSU_VERSION=1.7 MYSQL_PORT_3306_TCP_PORT=3306 MYSQL_PORT_3306_TCP=tcp://172.17.0.3:3306 MYSQL_PORT_5123_TCP_PORT=5123 MYSQL_ENV_MYSQL_VERSION=5.7.18-1debian8 MYSQL_NAME=/site-metrics/mysql MYSQL_PORT_3306_TCP_PROTO=tcp MYSQL_PORT_3306_TCP_ADDR=172.17.0.3 MYSQL_ENV_MYSQL_MAJOR=5.7 MYSQL_PORT=tcp://172.17.0.3:3306 但有没有办法在我的Python脚本中这样做,所以我不必每次都摆弄这个? 谢谢您的帮助!