美文网首页
docker入门三:搭建可以从本机访问的容器

docker入门三:搭建可以从本机访问的容器

作者: 沿哲 | 来源:发表于2020-10-08 18:52 被阅读0次

任务

通过虚拟机中的mysql镜像建立容器使得本机可以通过IP与端口号访问容器内部并使用mysql

1. pull好mysql镜像

我用的是mysql:8

docker pull mysql:8

2. 启动镜像,建立容器

容器名称:mysql-test2
端口映射:将容器的22号端口映射出来,使得从其他主机上可以访问3307来访问容器
MYSQL_ROOT_PASSWORD:会在第3步用到

docker  run -itd --name mysql-test2 -p 3307:22 -e MYSQL_ROOT_PASSWORD=123456 mysql:8 

建立好的效果图如下,通过docker ps查看容器建立情况


2.PNG

3. 进入容器内启动mysql

按照如下语句进入,回车后需要输入密码。密码就是在启动mysql镜像的时候设定的

mysql -h localhost -u root -p
  • 这里的localhost对应的是容器IP,有专门的语句查看


    3.PNG

4. apt-get update(容器内部操作)

从刚才的mysql退出(ctrl+d),配置其它。首先update


4.PNG

5. install ssh、vim(容器内部操作)

update好之后进行安装工作

 apt-get install openssh-server
 apt-get install vim

6. 设定密码

passwd root

输入自己记得的密码再回车


6.PNG

7. 对sshd_config文件进行编辑(容器内部操作)

在etc/ssh文件夹下

vi sshd_config

对下面这两句进行修改,均改成yes,并把前面的#去掉!!。

7.PNG 7.PNG

8. 重启ssh(容器内部操作)

一句话的功夫

service ssh restart

9. 电脑本机登录虚拟机的镜像

root@后的内容自己在虚拟机中输入ifconfig查看,端口3307
登录进容器后输入下面这句话,本机也可以使用了!

mysql -h localhost -u root -p
9.PNG

用Xshell试一下,相同的操作,仍然可以访问容器并开启mysql服务


9.PNG

附:对localhost探究

如果在mysql启动语句中-h 后不加localhost,那应该用什么IP地址呢?肯定不是虚拟机ifconfig之后虚拟机的地址,那么会是ifconfig之后显示的docker的IP地址吗?经过我的实验,我发现不是!
对于容器有专门的IP地址查看操作,如下

docker inspect --format '{{ .NetworkSettings.IPAddress }}' c9d  #c9d是我的容器ID前三位

经过这个语句查到的IP的确和ifconfig查到的不太一样~

用正经方法查到的IP代替localhost,果然可行~


相关文章

  • docker入门三:搭建可以从本机访问的容器

    任务 通过虚拟机中的mysql镜像建立容器使得本机可以通过IP与端口号访问容器内部并使用mysql 1. pull...

  • docker 容器的通信

    一. 本机访问docker 的容器 本地主机的 8088 被映射到了容器的 8080 端口。此时访问本机的 808...

  • docker

    docker 容器 新建容器docker create it ... 查看本机上的容器docker ps -a ...

  • Docker 搭建HFish蜜罐

    首先要求本机已经安装docker 安装好docker之后拉取镜像 容器部署 启动容器就成功了,访问管理后台 进入容...

  • Docker MacOS Kitematic 使用技巧

    [TOC] 非本机也能访问容器中的服务 让外部网络能访问 mac 虚拟机内部的 docker 服务 http://...

  • docker镜像

    Docker镜像是构建docker容器的基础,容器是docker镜像的运行的实例。构建镜像只用三条命令就可以搭建一...

  • Docker CentOS搭建私有系统

    Docker容器的使用已经烂大街了,写个入门docker搭建centos系统吧,有了centos,对于码农来说,相...

  • Docker部署Redis集群

    搭建Docker 从docker库获取redis镜像 创建redis容器(run命令) 创建6个容器,3主3从。接...

  • Docker | 容器数据卷详解

    什么是容器数据卷 从docker的理念说起,docker将应用和环境打包成一个镜像,运行镜像(生成容器)就可以访问...

  • 基于Docker快速搭建多节点Hadoop集群

    GitHub: kiwenlau/hadoop-cluster-docker 可以直接进入第三部分,快速在本机搭建...

网友评论

      本文标题:docker入门三:搭建可以从本机访问的容器

      本文链接:https://www.haomeiwen.com/subject/sukhpktx.html