Docker拉取镜像
拉取MySQL镜像
拉取
docker pull mysql:latest
创建 MySQL 容器
# 不指定本地映射文件
docker run --name mysql01 -p 3309:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:latest
# 指定本地映射文件(宿主机需提前创建文件夹)
docker run --name mysql01 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -v /data/mysql/mysql01:/var/lib/mysql -d mysql:latest
启动与停止 MySQL 容器
# 1.使用 mysql-cli 访问
mysql-cli -h 127.0.0.1 -u root -p root
# 2.使用 Navicat 或 mysqlWorkbatch 等 mysql 图形界面工具连接
连接:127.0.0.1 端口:3306 用户名:root 密码:root
拉取指定版本的mysql
docker pull mysql:5.7
创建挂载目录
mkdir -p $HOME/docker/mysql57
cd $HOME/docker/mysql57
运行容器
方式一 不推荐
docker run -p 3306:3306 --name mysql57 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
方式二:推荐
docker run -p 3306:3306 --name mysql57 \
-v $PWD/conf:/etc/mysql \
-v $PWD/logs:/var/log/mysql \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci
方式二参数说明
–name:容器名,此处命名为mysql57
-v :挂载目录
-e:配置信息,此处配置mysql的root用户的登陆密码
-p:端口映射,此处映射 主机3306端口 到 容器的3306端口
-d:源镜像名,此处为 mysql:5.7并后台运行 后面为设置mysql的默认编码
同时拉取第二个mysql镜像
docker run --name mysql57 -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root -v /home/docker/mysql57:/var/lib/mysql -d mysql:5.7
参数说明:建立一个名称为mysql57的mysql容器,
-d mysql:5.7表示容器版本,
-v 表示容器中的文件挂载到宿主机文件,:前面是宿主机文件,后面是容器文件
-e 表示连接的用户是root,密码是root
-p 表示宿主机端口:容器端口
Redis镜像
拉取
docker pull redis:latest
创建Redis容器
docker run -d --name redis01 -p 6379:6379 redis --requirepass "password"
上面可能导致连接不上,就用下面命令
docker run -itd --name redis-test -p 6379:6379 redis
连接Redis服务器
docker exec -it e231128 redis-cli
Nginx镜像
拉取
docker pull nginx:latest
启动容器
docker run -d --name nginx01 -p 8080:80 nginx:latest
# 将 nginx.conf 挂载到宿主机
docker run -d --name nginx01 -p 8080:80 -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf nginx:latest
启动之后浏览器打开http://localhost:8080显示 Welcome to nginx! 即证明 nginx 安装成功。
Nginx 相关命令
start nginx windows启动
service nginx start linux/mac启动
nginx -c filename 为 nginx 指定一个配置文件,来代替缺省的。
nginx -c filename -p /path 为 nginx 指定配置文件和日志存储位置
nginx -s relaod 重启
nginx -s stop 快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。
nginx -s quit 平稳关闭Nginx,保存相关信息,有安排的结束web服务。
nginx -t 不运行,仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。
nginx -v 显示 nginx 的版本。
nginx -V 显示 nginx 的版本,编译器版本和配置参数。
RabbitMQ镜像
为什么RabbitMQ要增加查找镜像这一步呢,因为Rabbit有一个管理后台,我们需要在管理后台查看 MQ 的一些信息,所以 latest 版本不适合,我们可以在 docker hub上查找,我这里选择的是3.8.7-management
拉取
docker pull rabbitmq:3.8.7-management
启动镜像
# 访问http://localhost:15672 默认用户名密码都是guest
docker run -d --name rabbitmq01 -p 5672:5672 -p 15672:15672 rabbitmq:3.8.7-management
# 指定密码启动
docker run -d --name rabbitmq01 -p 5672:5672 -p 15672:15672 --hostname rabbitmq01 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 rabbitmq:3.8.7-management
访问 RabbitMQ 管理后台
浏览器中打开http://localhost:15672/ 输入用户名: admin ,密码: 123456 即可。