Tag: mysql

如何创buildssh隧道到dockerfile / mysql容器

我正在寻找正确的语法来创build一个SSH隧道(在非标准的端口,例如3309),我可以使用从Mac OS X Yosemiteterminal,这将使我可以使用Sequel Pro连接到MySQL容器运行在boot2docker里面。 例如,我试过这个, ssh -L3309:localhost:3306 docker@$(boot2docker ip) 但它要求docker@192.168.59.103的密码,我不认为这是必要的,所以我认为这是不正确的。 谢谢!

在Docker容器上执行SQL脚本

我有一个docker运行的MySQL容器,我想推一个.sql文件的容器,然后让MySQL执行它的命令。 第一步相当简单: docker cp ./dummy.sql <container_id>:/ 从那里我试图从命令行运行mysql,并将其指向我刚推入容器的文件。 docker exec <container_id> mysql -u root -ppassword < /dummy.sql 这个命令似乎试图在本地使用/sample.sql作为标准input,而不是在容器上。 我也尝试包装容器ID后,似乎也无法正常工作的报价。 我也尝试推入一个.sh文件,将其中的命令传递给docker容器,然后执行该文件,但这不太理想,也无法正常工作。 有什么build议?

为什么可以连接mysql CLI,但不是WordPress?

我有一个Wordpress(php-fpm / nginx)服务器,完全新鲜。 在CentOS上运行。 我也有一个docker的容器,从香草mysql服务器的图像build成。 MySQLconfiguration 它运行在3306端口上,所有的MySQL用户都是在主机172.17.0.1 (例如root@172.17.0.1 )上注册的,这是docker的网关IP。 docker集装箱安装使用一个ansible剧本。 所有的configuration设置都是参数化的,并且这些参数在任何适当的地方都可以使用,包括WordPressconfiguration文件和在MySQL docker安装过程中填充root密码之类的东西的环境variables。 这里是我configuration相关数据库的地方: WordPressconfiguration: 这是两部分,其中我将包括相关的。 在我可靠的手册中,这段代码设置了WordPress表和用户(成功): – name: Create WordPress database mysql_db: name: '{{ wp_db_name }}' state: present login_user: root login_password: '{{ mysql_root_password }}' login_host: '{{ docker_mysql_ip }}' – name: Create WordPress database user mysql_user: name: '{{ wp_db_user }}' password: '{{ wp_db_password }}' priv: '{{ […]

如何build立一个运行MySQL的Docker容器?

我的目标是拥有一个运行MySQL服务的docker容器。 所以每次启动容器时,数据库都处于初始状态,MySQL正在运行。 几乎一切都很好,但是当我启动容器MySQL服务没有运行。 每次在控制台中,我必须像这样启动它:service mysql start。 以下是我如何构build和运行容器的步骤: $ docker build -t executer:mysql . Sending build context to Docker daemon 15.87 kB Sending build context to Docker daemon Step 0 : FROM debian:wheezy # # … Many steps without error # Step 17 : RUN mysql_install_db –user=mysql –basedir=/usr/ –ldata=/var/lib/mysql/ —> Using cache —> 1c71bf4524f0 Step 18 […]

无法将大型数据库导入到docker mysql容器中

我试图导入一个大型数据库到一个MySQL容器。 我已经将主机目录挂载为mysql容器的卷。 所以数据在主机上是持久的。 导入的sql文件是14 GB +。 mysql容器通过导入变成无响应的一半。 当我运行docker stats我可以看到一旦mysql容器吃了所有可用的内存CPU %使用率变得< 1 。 我试图增加docker的内存高达10 GB和它分配更多的内存到Docker时从导入创build更多的表。 但我不能从主机分配超过10GB 。 以下是我docker-compose.yml文件 mysql: image: mysql:5.6 environment: – MYSQL_ROOT_PASSWORD=12345678 volumes: – ./mysql/lib:/var/lib/mysql – ./mysql/conf.d:/etc/mysql/conf.d – ./mysql/log:/var/log/mysql – /tmp:/tmp ports: – "3306:3306" 我使用Docker for mac版本1.12.1 Docker for mac 我正在使用docker exec -it docker_mysql_1 /bin/bashlogin到容器并从/tmp导入sql文件 此外,我尝试了通过将SQL文件安装到/docker-entrypoint-initdb.d的方式推荐的方式。 但是,这也停止了MySQL的初始化。 更新1 $ docker info Containers: 1 Running: […]

Docker MYSQL'连接被拒绝'

我第一次尝试了Docker。 得到了一个LEMP堆栈并运行,但是我无法连接到MYSQL数据库。 不在我的Symfony应用程序上,不在PHPMyAdmin上。 应用程序正在返回以下错误代码: 驱动程序发生exception:SQLSTATE [HY000] [2002]连接被拒绝 这是我的docker-compose.yml: nginx: image: tutum/nginx ports: – "80:80" links: – phpfpm volumes: – ./nginx/default:/etc/nginx/sites-available/default – ./nginx/default:/etc/nginx/sites-enabled/default – ./logs/nginx-error.log:/var/log/nginx/error.log – ./logs/nginx-access.log:/var/log/nginx/access.log phpfpm: build: phpfpm/ ports: – "9000:9000" volumes: – ./public:/usr/share/nginx/html mysql: image: mariadb ports: – 3306:3306 environment: MYSQL_ROOT_PASSWORD: admin phpmyadmin: image: phpmyadmin/phpmyadmin restart: always links: – mysql ports: – 8183:80 […]

从主机连接到docker容器中的mysql

(由于我在Docker或mysqlpipe理方面的知识有限,这可能是一个愚蠢的问题,但是因为我在这个问题上花了整整一个晚上,所以我敢问。) 简而言之 我想在Docker容器中运行mysql,并从我的主机连接到它。 到目前为止,我所能达到的最好的是 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 更多细节 我正在使用下面的Dockerfile FROM ubuntu:14.04.3 RUN apt-get update && apt-get install -y mysql-server # Ensure we won't bind to localhost only RUN grep -v bind-address /etc/mysql/my.cnf > temp.txt \ && mv temp.txt /etc/mysql/my.cnf # It doesn't seem needed since […]

Docker中的MySQL冻结在root密码configuration中

我有下一个dockerfile: FROM ubuntu:16.04 RUN apt-get update && apt-get upgrade -y && apt-get install -y apache2 mysql-server mysql-client 之后,Docker构build问我密码的根目录: While not mandatory, it is highly recommended that you set a password for the MySQL administrative "root" user. If this field is left blank, the password will not be changed. New password for the MySQL "root" user: […]

Docker化的Web应用程序连接到主机上的MySQL数据库

我想迁移我的应用程序部署以使用docker / docker集线器。 目前的生产设置是负载平衡两台Linux服务器,运行Apache,Tomcat和MySQL的stream量。 Java Web应用程序通过JDBC连接到主+从MySQL DB。 为了尽量减less这种变化的影响,作为第一步,我正在寻找容器化tomcat和web应用程序。 像现在一样,让Apache和MySQL在主机上运行。 我遇到的问题是将在Docker容器中运行的应用程序连接到在主机上运行的MySQL DB。 我现在可以做的最好的事情是连接到docker容器,获取它的IP地址,然后使用SQL GRANT来允许IP地址访问数据库。 这样做的麻烦在于,每次运行一个容器时都可能会得到一个新的IP地址,因此每次都需要运行一个授权。 我一直在玩这个东西一段时间,我不相信没有比我上面提出的更好的解决scheme。 任何人都做了这样的事情? 任何人都有如何最好地解决这个问题的任何build议。 编辑已经有人build议“ 从Docker容器内部,如何连接到本机的本地主机? ”是一个重复的 – 但是底层的问题依然存在。 每次我从图像中创build一个Docker容器时,我都可能获得需要被授权访问数据库的容器的新IP地址。 我想尽量避免这样做。 非常感谢

docker.io – Docker连接应用程序和数据库容器

我试图用我的Scala-Akka应用程序和两个独立的Docker容器上的MySQL数据库。 我发现Docker允许开发人员用名为–link的标志将他们的应用程序连接到他们的数据库。 在我用来创build图像的Dockerfiles中,我添加了EXPOSE 3306 8080。 这就是我如何运行容器: docker run -d -p 3306:3306 –name mysql centos6mysql docker run -d -p 8080:8080 –name scalaapp –link mysql:db centos6scala 在运行容器后,我使用docker ps,我可以看到活动的容器。 但是,应用程序容器似乎没有使用MySQL容器中的数据库。 任何人都知道什么是错的?