Ubuntu使用国内源安装Docker,Mysql,Redis

目录

安装docker

安装Mysql

安装Redis


安装docker

1.卸载原有版本

【docker】ubuntu完全卸载docker及再次安装_ubuntu 卸载docker client卸载-CSDN博客

2.更新索引包

sudo apt-get update

3.安装添加使用 HTTPS 传输的软件包

sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common

4.添加软件源的GPG密钥(本人选择的中科大)

中科大:

curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

阿里云:

curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

官方源:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

5.向 source.list 中添加Docker软件源(本人选择的中科大)

中科大源:

sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

阿里源:

sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

官方源:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

6.再次更新索引包

sudo apt-get update

若想直接安装最新版本执行以下命令即可
sudo apt-get install docker-ce

7.查看docker版本

apt-cache madison docker-ce

8.安装指定版本

sudo apt-get install docker-ce=<VERSION>

例如
sudo apt-get install docker-ce=18.06.3~ce~3-0~ubuntu

9.启动后台服务

sudo service docker start

10.查看Docker版本信息

docker version

11.镜像加速

1.新版的 Docker 使用 /etc/docker/daemon.json 来配置 Daemon。

请在该配置文件中加入(没有该文件的话,请先建一个)Docker中国官方加速:

{
    "registry-mirrors": ["https://registry.docker-cn.com"]
}

重启Docker使之生效:

sudo service docker restart

如果想添加其它加速源,请移步该博客查看:Ubuntu下安装Docker及镜像源设置_ubuntu修改docker镜像源-CSDN博客

2.使用阿里云自己的镜像加速命令

进入以下网址
https://cr.console.aliyun.com/cn-hangzhou/instances

12.添加当前用户到docker组(可选)

创建docker组:

创建docker用户组:

sudo groupadd docker

当前用户加入docker组:

sudo usermod -aG docker $USER

检查创建是否有效:

cat /etc/group

重启docker:

sudo systemctl restart docker

为了避免多次使用sudo命令,故在此将当前用户添加到docker组

# 添加docker用户组,一般已存在,不需要执行

sudo groupadd docker

# 将登陆用户加入到docker用户组中

sudo gpasswd -a $USER docker

# 更新用户组

newgrp docker

# 测试docker命令是否可以使用sudo正常使用

docker version

解决docker拉取镜像报错:Error response from daemon: Get “https://registry-1.docker.io/v2/“: dial tcp

解决docker拉取镜像报错:Error response from daemon: Get “https://registry-1.docker.io/v2/“: dial tcp-CSDN博客

安装Mysql

首先,更新软件包列表索引:

sudo apt update

安装MySQL

sudo apt install mysql-server

查看MySQL版本

mysql --version

由于本地系统为ubuntu20.04,MySql版本号为8.0。

查看服务状态

service mysql status

状态正常,到此安装完毕!

配置
此时,mysql客户端已经作为服务器的依赖安装到本地,故可以通过命令行登录服务器。mysql8.0,root 用户默认通过 auth_socket 插件授权,而 auth_socket 插件通过 Unix socket 文件来验证所有连接到 localhost 的用户。这意味着你不能以用户–密码的方式,登录root账户。通过指令以root身份登录:

sudo mysql

但是,通过第三方程序是无法连接到数据库的,例如JDBC、pymysql等。可以通过修改mysql下的user表,配置密码方式以root身份登录:

use mysql;
select user, host, plugin from user;

将root对应的plugin由 auth_socket 改为 mysql_native_password 即使是mysql8.0也是,否则影响后续远程连接:

#MySQL8.0必须先执行此步骤设置密码,MySQL5.7可以选择先安装下面的secure!!!
alter user 'root'@'localhost' identified with mysql_native_password by '密码';

flush privileges;

exit;

至此,可以不用输入sudo,通过密码的方式登录数据库:

mysql -uroot -p
增强数据库服务的安全性

执行:

sudo mysql_secure_installation

键入Enter后继续,

设置root用户密码,并反馈当前密码强度,询问是否确认密码:

询问三个问题,并根据提供的答案来设置系统的安全性。

是否关删除匿名测试用户的信息。
是否禁止远程root登录。只允许本地登录root用户,并拒绝远程连接。
是否删除 test 数据库。
根据自身需求键入相应的y or n。

最后输入 y ,重新加载特权表使上述配置生效。返回 All Done!,设置成功。

远程连接

如何连接ubuntu服务器下的mysql数据库?

修改配置文件:

#MySQL8.0!!!
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 
#MySQL5.7!!!
sudo vim /etc/my.cnf 

注释下图标记行,解除地址绑定:

重启mysql服务:

sudo service mysql restart

登录MySQL后执行:

use mysql;
update user set host='%' where user='root';
flush privileges;

#MySQL8.0执行这行
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
#MySQL5.7执行这行
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;

flush privileges;

卸载:

sudo apt purge mysql-* # mysql后用tab补全,把所有与mysql相关的卸载

sudo rm -rf /etc/mysql/ /var/lib/mysql

sudo apt autoremove

sudo apt autoclean

忘记密码(ERROR 1045):

修改配置文件,在[mysqld]后添加 skip-grant-tables (登录时跳过权限检查):

#MySQL8.0!!!
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf 
#MySQL5.7!!!
sudo vim /etc/my.cnf 

重启服务后可以无密码登录mysql:

sudo service mysql restart

mysql

mysql8.0

use mysql; 
#必须先将authentication_string置为空!
update user set authentication_string='' where user='root';

flush privileges;
#设置新密码
ALTER user 'root'@'%' IDENTIFIED BY '新密码';

mysql5.7

use mysql; 
update user set authentication_string = password('新密码') where user = 'root';

最后记得删除配置文件中的 skip-grant-tables 并重启服务,否则会影响远程连接!

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

查看密码策略:

SHOW VARIABLES LIKE 'validate_password%';
set global validate_password.policy=0
set global validate_password.length=1;

最后修改密码:

alter user 'root'@'%' identified by 'root';

登录。

安装Redis
史上最详细Docker安装Redis (含每一步的图解)实战_docker redis-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值