zoukankan      html  css  js  c++  java
  • centos8下docker安装及容器远程访问

    主机环境:centos8

    一、docker 安装

    step1:添加Docker存储库文件:(两种方式)

    (1) sudo yum-config-manager  --add-repo   https://download.docker.com/linux/centos/docker-ce.repo

    如果使用阿里云镜像源:可以用sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

    (2) sudo curl  https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo,然后sudo yum makecache更新RPM索引缓存

     

    step2:安装docker及客户端

    sudo yum install docker-ce docker-ce-cli

    如提示:package docker-ce-3:19.03.4-3.el7.x86_64 requires containerd.io >= 1.2.2-3 那就先装新版的 containerd.io

    sudo dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm

    step3:验证docker安装及后续设置

    #docker --version

    #systemctl enable docker

    #systemctl start docker

    #usermod -aG docker 你登录centos用户名        //(添加用户到docker组,避免docker操作时验证权限)

     二、配置阿里云镜像加速

    注册阿里云账号,登录阿里云控制台——>产品与服务——>弹性计算——>容器镜像服务-》镜像加速器,取得个人加速器地址:

    [root@server1 ~]# cd /etc/docker/

    [root@server1 docker]# ls

    key.json

    [root@server1 docker]# vi daemon.json

    {

      "registry-mirrors": ["个人加速器地址"]

    }

    [root@server1 docker]# systemctl daemon-reload

    [root@server1 docker]# systemctl restart docker

    三、创建容器

    (1) 关闭防火墙

    systemctl stop firewalld

    (2) Docker-Mysql

    下载mysql

    docker pull mysql

    创建container

    docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

    进入container,设置mysql

    docker exec -it mysql-test bash

    mysql -u root -p

    CREATE USER 'ljh'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

    GRANT ALL PRIVILEGES ON *.* TO 'ljh'@'%';

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

    flush privileges;

    本机安装navicat for mysql,连接mysql。

    (3) Docker-tomcat

    下载tomcat

    docker pull tomcat

    运行我们的tomcat镜像

     docker run -d -p 8888:8080 -v /root/tomcat/:/usr/local/tomcat/webapps/ tomcat

    参数说明:

    -d 后台运行

    -p 指定访问主机的8888端口映射到8080端口。

    -v 指定我们容器的/usr/local/tomcat/webapps/目录为/root/tomcat/主机目录,后续我们要对tomcat进行操作直接在主机这个目录操作即可。

    在/root/tomcat/新建test目录,并在test目录下写入hello.html文件

    <html>

    <head>Tomcat Run In Docker</head>

    <body>

    hello docker.

    </body>

    </html>

    访问这个页面:
    curl -i http://127.0.0.1:8888/test/hello.html

    注意

    我们不能直接在tomcat目录下直接创建hello.html文件,curl -i http://127.0.0.1:8888/hello.html 访问的结果404.

    (4) 启动防火墙

    systemctl start firewalld

    添加端口规则:

    firewall-cmd --add-port 8888/tcp

    firewall-cmd --add-port 3306/tcp

    firewall-cmd --runtime-to-permanent

    (5)测试远程访问,使用navicat连接mysql,浏览器访问http://你的主机IP:8888/test/hello.html

    (6)不能远程访问情况下处理

    保证先关掉防火墙下,systemctl restart docker,然后启动容器,再打开防火墙就可以。

    感谢https://www.cnblogs.com/Hvai/博主给予的帮助

    参考文章:

    https://www.cnblogs.com/Hvai/p/11819520.html

    https://www.jianshu.com/p/a366351cc9a6

  • 相关阅读:
    元素查找
    合并果子 2004年NOIP全国联赛普及组
    队列练习1,2,3
    山峰
    栈练习1,2,3
    天使之城
    括号序列
    布尔表达式
    逆波兰表达式
    旅行家的预算 1999年NOIP全国联赛普及组NOIP全国联赛提高组
  • 原文地址:https://www.cnblogs.com/laop520/p/12053556.html
Copyright © 2011-2022 走看看