docker安装,安装redis,mysql等容器,以及删除容器等
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
docker -v
--查看docker版本docker images
--查看当前docker运行sudo systemctl start docker
--启动docker 在虚拟机里边docker images
--有时候权限不足 我们变为 sudo docker images
检查我们虚拟机里边有无下载镜像sudo systemctl enable docker
--设置开机自启动
docker 配置镜像加速
1
sudo mkdir -p /etc/docker
2
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://dcyzi7af.mirror.aliyuncs.com"]
}
EOF
3
sudo systemctl daemon-reload
4
sudo systemctl restart docker
docker指令安装mysql
1 sudo docker pull mysql
--安装最新的mysql
2 sudo docker pull mysql:版本号
我使用的是 mysql 8.0.2 --安装指定的版本号
启动安装的镜像
比如启动 mysql:
docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=a \
-d mysql:5.7
-----
上边是mysql5.7的启动方式
-d 代表以后台方式运行
-p 3306:3306 将容器的3306端口映射到主机的3306
-p 3306:3306; 将容器的3306端口映射到主机的3306端口
-v/mydata/mysgl/conf:/etc/mysgl :将配置文件夫挂载到主机
-v/mydata/mysgl/log:/var/log/mysgl :将日志文件夹挂载到主机
-w/mydata/mysgl/data:/var/lib/mysgl/ ,将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=root :初始化root用户的密码
有时候切换权限麻烦 所有我们切换到su root
--权限最高docker ps
--查看当前docker正在运行中的程序
docker run -dit -p 3306:3306 mysql:8.0.2 bash
--启动mysql 8.0.2
service mysql status
--查看mysql的状态service mysql start
--启动mys
docker exec -it mysql /bin/bash
--进入mysql内部
whereis mysql --查看mysql安装位置
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
一、查看容器,复制容器id 即container id
docker ps -a
二、停止容器
docker stop 你的容器id
三、删除容器
docker rm 容器id
四、查看镜像,复制镜像id即images id
docker images
五。删除镜像
docker rmi 镜像id
这是我装的
Mysql8.0安装
拉取mysql镜像
docker pull mysql:8.0
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d
mysql
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=a -d mysql
docker exec -it mysql /bin/bash
mysql -uroot -p123456
use mysql;
ALTER USER ‘root’@‘%’ IDENTIFIED BY ‘123456’ PASSWORD EXPIRE NEVER;
ALTER USER ‘root’@‘%’ IDENTIFIED WITH mysql_native_password BY
‘123456’;
FLUSH PRIVILEGES;
修改密码
mysqladmin -uroot -p旧密码 password 新密码 --密码为 123456
注意一下我装的虚拟机端口号mysql为 3307
29adbe537c3e mysql “docker-entrypoint.s…” 52 minutes ago Up 52 minutes 33060/tcp, 0.0.0.0:3307->3306/tcp, :::3307->3306/tcp mysql
首先进入
1、docker exec -it mysql bash //mysql是mysql容器的别名
2、mysql -uroot -p
3、输入密码
4、进入mysql>命令行界面
1,容器中登录mysql,查看mysql的版本
mysql> status;
mysql Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL)
2,进行授权远程连接(注意mysql 8.0跟之前的授权方式不同)
授权
GRANT ALL ON *.* TO 'root'@'%';
刷新权限
flush privileges;
此时,还不能远程访问,因为Navicat只支持旧版本的加密,需要更改mysql的加密规则
3,更改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'a' PASSWORD EXPIRE NEVER;
4,更新root用户密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'a';
刷新权限
flush privileges;
OK,设置完成,再次使用 Navicat 连接数据库
–谷粒商城下的
vi/mydata/mysql/conf/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection =utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve
下载redis
docker pull redis
创建实例并启动
mkdir -p /mydata/redis/conf
touch redis.conf
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
ls 查看当前文件夹下的文件
cat redis.conf
测试redis
docker exec -it redis redis-cli
由于以前的数据全存在内存中,从而我们重复读取get a的时候会导致失败
[root@localhost conf]# cat redis.conf
[root@localhost conf]# docker exec -it redis redis-cli
127.0.0.1:6379> set a b
OK
127.0.0.1:6379> get a
“b” //从而在一次上来的时候这块是null
127.0.0.1:6379> exit
–让redis 持久化 —> pwd
127.0.0.1:6379> exit
[root@localhost conf]# pwd
/mydata/redis/conf
[root@localhost conf]# ls
redis.conf
[root@localhost conf]# vi redis.conf
i --进入编辑
appendonly yes – 输入一下esc
:wq
--退出
docker restart redis
//重启redis
–设置开机自启动docker 里边容器
sudo docker update <容器名> --restart=always
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |