使用Docker及安装部分软件

一、前言

最近在银行内部部署项目的时候,发现GCC版本过期,是4.5的版本,导致了Nginx和Redis都无法进行make编译安装,但是GCC版本又因为无法连接到外网,无法进行升级。那么想到了使用Docker容器化技术来进行管理。其实之前也使用过Docker,但是这次决定将其系统性的整理一下。

下面章节将分为以下几个模块进行:

  • 安装Docker
  • 利用Docker安装Nginx
  • 利用Docker安装Redis
  • 利用Docker安装MySQL

二、安装Docker

因为之前测试的时候使用的是root用户,但是同事说要在appuser用户下进行安装,为了防止不必要的麻烦,那就都使用appuser用户来进行安装吧。

本文参考博客:https://blog.csdn.net/qq_28323595/article/details/120202744

但是又与参考中的博客有所不同,因为之前同事安装过,所以就参考着同事的步骤来,也是成功的。

当前使用的Docker版本号是:docker-19.03.9.tgz

包放在阿里网盘中,阿里网盘链接如下所示:https://www.aliyundrive.com/s/jAMuNwbDnv9 点击链接保存,或者复制本段内容,打开「阿里云盘」APP ,无需下载极速在线查看,视频原画倍速播放。

因为MySQL.tar太大了,这里无法分享,所有有需要的可以自己打包个镜像

制作docker镜像参考链接如下所示:https://blog.csdn.net/qq_41204464/article/details/122034637

2.1、给要操作的用户授权

因为root用户要给appuser用户进行授权之后,appuser可以来操作docker。

sudoers
whereis sudoers
ls -l /etc/sudoers
// 先给文件添加上写的权限    
chmod -v u+w /etc/sudoers

编辑/etc/sudoers,给新用户添加sudo权限

:这里的qwtest就是我们要进行授权的用户,但是因为是直接复制的图片,这里暂且就将qwtest用户看成是appuser用户即可。

编辑完保存退出,并将编辑权限收回

chmod -v u-w /etc/sudoers

2.2、切换用户到appuser

exit
su qwtest

2.3、解压Docker压缩包

将docker安装包上传到/home/appuser/docker下,并进行解压

cd /home/qwtest/docker
ll
tar -xvf docker-19.03.9.tgz

将解压出来的docker目录下的指令复制到 /usr/bin/ 目录下

sudo cp docker/* /usr/bin/

2.4、将Docker注册成服务

// 新建文件
sudo vi /etc/systemd/system/docker.service

然后复制以下内容到docker.service文件中来

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
 
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s

[Install]
WantedBy=multi-user.target

给docker.service添加执行权限并重新加载配置文件

sudo chmod a+x /etc/systemd/system/docker.service
sudo systemctl daemon-reload

2.5、启动docker

sudo systemctl start docker
#查看docker版本
docker -v
#查看当前启动容器
docker ps
#查看当前镜像
docker images

注:出现问题。在这里,我和同事装了四台机器之后,发现在进行docker -v的时候没有问题,但是进行docker ps和docker images的时候提示没有权限。

解决方式:这个时候一定要关闭掉当前会话窗口,重新打开一个新的会话窗口,然后再次执行,发现会显示出来上来的内容。

如果还是无法成功,建议参考博客中的安装方式来进行安装。

2.6、卸载Docker

关于卸载docker的一些参考链接我也放在这里:

三、利用Docker安装Nginx

因为同事已经打包了镜像,所以在这里我就直接把镜像放上来。

3.1、加载镜像

首先使用命令load进行从tar文件加载出来镜像:

docker load -i nginx.tar

然后查看镜像是否加载成功

docker  images

3.2、配置文件映射

因为在安装Nginx的时候,如果直接启动容器的话,那么外界想要去查看镜像中的日志、配置文件等,比较麻烦。

所以直接来做一个映射,方便后期进行查看日志等。

四、利用Docker安装Redis

3.1、加载镜像

首先使用命令load进行从tar文件加载出来镜像:

docker load -i nginx.tar

然后查看镜像是否加载成功

docker  images

3.2、配置文件映射

因为在安装Nginx的时候,如果直接启动容器的话,那么外界想要去查看镜像中的日志、配置文件等,比较麻烦。

所以直接来做一个映射,方便后期进行查看日志等。

五、利用Docker安装MySQL

3.1、加载镜像

首先使用命令load进行从tar文件加载出来镜像:

docker load -i nginx.tar

然后查看镜像是否加载成功

docker  images

3.2、配置文件映射

因为在安装Nginx的时候,如果直接启动容器的话,那么外界想要去查看镜像中的日志、配置文件等,比较麻烦。

所以直接来做一个映射,方便后期进行查看日志等。

posted @ 2023-05-08 23:30  写的代码很烂  阅读(104)  评论(0编辑  收藏  举报