docker容器内怎么连接外部的mysql

docker容器内怎么连接外部的mysql,第1张

1. 首先创建一个目录并在目录下创建一个Dockerfile,文件内容如下

[plain] view plain copy print?

FROM centos:centos6

MAINTAINER Fanbin Kong "kongxx@hotmail.com"

RUN yum install -y mysql-server mysql

RUN /etc/init.d/mysqld start &&\

mysql -e "grant all privileges on *.* to 'root'@'%' identified by 'letmein'"&&\

mysql -e "grant all privileges on *.* to 'root'@'localhost' identified by 'letmein'"&&\

mysql -u root -pletmein -e "show databases"

EXPOSE 3306

CMD ["/usr/bin/mysqld_safe"]

-

Docker-Conpose为应用创建一个网络,Docker-Compose为每个Service创建一个容器,并加入到这个网络中,被网络中的其它容器访问和发现。此容器能够以容器名称作为hostname标识,被其它容器访问。

在不使用Docker Compose的时候,将两个容器链接起来使用 --link 参数,相对来说比较简单,以 nginx 镜像为例子:

这样 test2 与 test1 便建立了链接,就可以在 test2 中使用访问 test1 中的服务了,在docker-compose更简单。

示例docker-compose创建资源

docker-compose.yml

在myapp目录使用命令docker-compose up,将执行以下几步:

更新容器

使用docker-compose up将停止并移除旧容器,重建新容器。

任何连接到旧容器的(其它容器的)连接将关闭,然后检测条件,根据容器名称查找并重建连接。

Links

默认情况下,Docker-Compose下的Servcie之间是可通过服务名称(容器名称,也即hostname)相互访问的。

links只不过为Service提供了以别名访问其它Service的一种方式。

容器连接external_links

我们以 Docker-compose一键部署zk集群+dubbo-admin 为例,将其拆开部署,如下:

zk.yml

启动zk容器 docker-compose -f zk.yml up -d

tomcat.yml

启动tomcat容器 docker-compose -f tomcat.yml up -d

注意,tomcat容器依赖于zk容器,所以要先启动zk容器。

接着我们使用ping来测试下连通性:

从上面得知,两个容器都能ping通。

学习交流群: 64691032

1、docker search oracle[搜索docker云平台上的oracle的镜像]

2、docker pull registry.cn-hangzhou.aliyuncs.com/qida/oracle-xe-11g【拉取】

3、docker images

4、docker run -d -p 49160:22 -p 49161:1521 -e ORACLE_ALLOW_REMOTE=true --name oracle -v /dockerOracleData:/dockerOracleData  registry.cn-hangzhou.aliyuncs.com/qida/oracle-xe-11g

5、docker ps

6、docker s

7、sqlplus / as sysdba

PS:docker容器常用命令

docker search xxx:搜索docker云平台相关的镜像

docker pull xxx:根据名称拉取docker云平台镜像

docker images:列出本地镜像 

    -a:列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)

    -digests:显示镜像的摘要信息

    -f:显示满足条件的镜像

    --format:指定返回值的模板文件

    --no-trunc:显示完整的镜像信息

    -q:只显示镜像ID

docker ps:列出容器

    -a:显示所有的容器,包括未运行的

    -f:根据条件过滤显示的内容

    --format:指定返回值的模板文件

    -l:显示最近创建的容器

    -n:列出最近创建的n个容器

    --no-trunc:不截断输出

    -q:静默模式,只显示容器编号

    -s:显示总的文件大小

docker start  :启动一个或多个已经被停止的容器

docker stop  :停止一个运行中的容器

docker restart  :重启容器

docker rm : 删除一个或多个容器。

    -f:通过 SIGKILL 信号强制删除一个运行中的容器

    -l:移除容器间的网络连接,而非容器本身

    -v:删除与容器关联的卷


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9562850.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-29
下一篇2023-04-29

发表评论

登录后才能评论

评论列表(0条)

    保存