专业的编程技术博客社区

网站首页 > 博客文章 正文

P4-2 图像操作界面Portainer实践(图像用户界面)

baijin 2024-09-10 11:04:17 博客文章 11 ℃ 0 评论

内容简介:图像操作界面Portainer实践

相关链接:P4-1 服务器安装docker实践

背景:Linux服务器centos8.1

我们上一篇文章介绍了在服务器上如何安装docker,为了更好地进行操作,这里就介绍个图像操作界面Portainer,方便管理和维护docker环境。

1.Portainer是什么?

Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 而且完全免费,基于容器化的安装方式,方便高效部署。

2. 安装Portainer

(1)下载镜像

docker pull portainer/portainer

(2)查看镜像

docker images

3. 启动

docker run -d -p 9000:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --name prtainer-test portainer/portainer

该语句用宿主机9000端口关联容器中的9000端口,并给容器起名为portainer-test。

4.访问

若是服务器则替换成对应的IP

http://IP:9000/,第一次进入之后需要修改密码

单机版这里选择local即可,选择完毕,点击Connect即可连接到本地docker

注意:该页面上有提示需要挂载本地 /var/run/docker.socker与容器内的/var/run/docker.socker连接。因此,在启动时必须指定该挂载文件。

如下,可以看到docker 容器的详细信息以及配置信息

5.Docker中部署mysql服务

我们在docker上部署mysql有两种方式,一种就是通过portainer,另一种就是执行docker指令,我们两种都执行下

方式一:左侧的“App Templates”有现成的可用模板,例如Docker映像注册表,Nginx,Httpd,MySQl,WordPress等。

选择要部署的容器,只需单击相应的模板。

这里让我们启动MySQL容器。为此,请单击MySQL模板。输入容器名称,选择网络类型(例如新娘模式)。单击“Show advanced options”并设置端口号。

查看创建的容器

点进去之后我们可以对其进行操作,如启动、关闭等 查看其基本信息

方式二:

(1)拉取镜像

docker pull mysql

(2)构建服务

docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD="Q1w2e3r4" mysql

执行指令解析:

-d表示容器将以后台模式运行,所有I/O数据只能通过网络资源或者共享卷组来进行交互。

–name mysql给容器取名为 mysql,这样方便记忆。

-p 127.0.0.1:3306:3306将主机(127.0.0.1)的端口 3306 映射到容器的端口 3306 中。这样访问主机中的 3306 端口就等于访问容器中的 3306 端口

-v D:\var\mysql\data:/var/lib/mysql 将本机的文件目录挂载到容器对应的目录(/var/lib/mysql)中。这样可以通过数据卷实现容器中数据的持久化。

-e 表示设置环境变量,此处设置了 mysql root 用户的初始密码为 Q1w2e3r4。

mysql:5.6.39表示使用 mysql 为 5.6.39启动一个容器。

通过以上两种方式我们安装完成之后,用navicate进行远程连接

如果出现出现navicat 连接不上虚拟机上的mysql容器 client does not support authentication protocol requested by server;这种情况

造成这种问题出现的原因是发现是由于navicat版本的问题,mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password

有两种解决方案

(1)升级navicat,由于navicat是收费的,个人感觉升级会比较麻烦点。

(2)把用户密码登录的加密规则还原成mysql_native_password这种加密方式,本人选择第二种解决方案

在服务器上进行操作

docker exec -it mysql bash

通过mysql -u root -p"Q1w2e3r4" 进入mysql的命令行模式

alter user 'root'@'%' identified by 'Q1w2e3r4' password expire never;

alter user 'root'@'%' identified with mysql_native_password by 'Q1w2e3r4';

flush privileges;

再次连接,可以成功连接

参考资料

https://www.portainer.io/官方文档(最重要)

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表