Linux环境下部署Docker
之前以及介绍过一篇《部署虚拟机安装以及使用Linux,看一篇就够了》,里面介绍VM,Linux(我安装的是Centos7的min版)以及Xsheel6的安装,没有看过的同学可以看看我以往的文章按照步骤进行安装,今天主要介绍在linux下的Dokcer环境安装、Docker容器中安装Mysql以及在安装过程中可能出现的问题。
查看IP地址输入:
ifconfig
会有什么问题?
[root@localhost ~]# ifconfig
-bash: ifconfig: 未找到命令
这是因为我们安装的是最小版本所有是没有这个ifconfig命令的,那么我们在没有安装ifconfig的情况下如何查看IP地址呢?
- 1.输入:
ip addr
结果如下:
[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:2d:10:34 brd ff:ff:ff:ff:ff:ff
inet 192.168.199.131/24 brd 192.168.199.255 scope global noprefixroute dynamic ens33
valid_lft 1358sec preferred_lft 1358sec
inet6 fe80::bbc1:f03e:2ac1:afcb/64 scope link noprefixroute
valid_lft forever preferred_lft forever
这样我们就可以在ens33中查看我们的IP地址。
- 2 安装ifconfig
我们需要怎么安装呢?使用命令
# 反查询ifconfig文件在什么包中存在
yum provides ifconfig
结构如下发现没有找到匹配的包源
已加载插件:fastestmirror
Determining fastest mirrors
* base: mirrors.ustc.edu.cn
* extras: mirrors.163.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
extras | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
(1/4): extras/7/x86_64/primary_db | 222 kB 00:00:00
(2/4): base/7/x86_64/group_gz | 153 kB 00:00:00
(3/4): updates/7/x86_64/primary_db | 4.7 MB 00:00:01
(4/4): base/7/x86_64/primary_db | 6.1 MB 00:00:03
base/7/x86_64/filelists_db
extras/7/x86_64/filelists_db
updates/7/x86_64/filelists_db
No matches found
- 实际上net-tools包就是ifconfig的包因此yum net-toos
yum install -y net-tools
安装结果如下
安装 1 软件包
总下载量:306 k
安装大小:917 k
Downloading packages:
警告:/var/cache/yum/x86_64/7/base/packages/net-tools-2.0-0.25.20131004git.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
net-tools-2.0-0.25.20131004git.el7.x86_64.rpm 的公钥尚未安装
net-tools-2.0-0.25.20131004git.el7.x86_64.rpm | 306 kB 00:00:00
从 file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 检索密钥
导入 GPG key 0xF4A80EB5:
用户ID : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
指纹 : 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
软件包 : centos-release-7-6.1810.2.el7.centos.x86_64 (@anaconda)
来自 : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : net-tools-2.0-0.25.20131004git.el7.x86_64 1/1
验证中 : net-tools-2.0-0.25.20131004git.el7.x86_64 1/1
已安装:
net-tools.x86_64 0:2.0-0.25.20131004git.el7
完毕!
表示安装成功。然后查看IP地址,然后使用XSheel理解linux,然后就可以安装Docker。
Docker安装
因为我们是首次安装Docker,以及linux刚安装版本也不是最新的,所以我们需要更新一下yum,可能需要几分钟。
yum update -y
查看Centos版本,查看其版本是否支持Docker
uname -r
如果以前安装过docker,需要卸载旧版本(可以省略如果没有安装过)
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装Docker需要的包yum-utils:这一步不可以省略
yum install -y yum-utils device-mapper-persistent-data lvm2
在yum源中添加docker仓库
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
可以查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
安装docker
yum install -y docker-ce
启动Docker
systemctl start docker
Mysql的安装
安装mysql就是为了将使用它,因此我们先将sql文件导入到linux 如图点击XSheel可以导入文件,下面会使用到
- 下载mysql镜像注:本版可以自己选择,我这边安装的是5.7
docker pull mysql:5.7
- 启动mysql
docker run -p 3306:3306 --name mysql \
-v /mymes/mysql/log:/var/log/mysql \
-v /mymes/mysql/data:/var/lib/mysql \
-v /mymes/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
- 将刚才上传到linux的sql文件拷贝到mysql容器 / 目录:
docker cp mymes.sql mysql:/
- 进入mysql
docker exec -it mysql /bin/bash
- 打开mysql客户端
mysql -uroot -proot --default-character-set=utf8
- 创建mymes数据库
create database mymes character set utf8
- 将sql文件导入mymes数据库
use mymes;
source /mymes.sql
- 创建一个mymes:123456账号并修权限,是的所有ip都可以访问
grant all privileges on *.* to 'mymes' @'%' identified by '123456';
总结:
今天主要介绍了linux下安装docker和mysql以及mysql的使用
Github地址:
github地址:https://github.com/bangbangzhou/greemes/tree/master