一、docker
# 安装docker
yum -y install docker
# 停止docker服务
systemctl stop docker
# 启动docker服务
systemctl start docker
# 设置Docker开机自启c
systemctl enable docker
# 禁用Docker开机自启
systemctl disable docker
# 重新启动Docker服务
systemctl restart docker
# 查看Docker信息
docker info
# 创建docker网络
docker network create -d bridge net #net为自己起的网络名称
# 列出所属有网络
docker network ls
# 查看网络信息
docker inspect 67a #67a 为创建的网络id
二、数据库
# 搜索镜像
docker search mariadb 搜索mariadb镜像(非必须)
# 拉取镜像
docker pull mariadb 下载docker镜像
# 查看镜像
docker images 查看本地已有的所有镜像
# 创建映射目录
mkdir -p /data/mariadb/data 建一个目录作为和容器的映射目录
# 启动容器
docker run -p 3306:3306 \
--name mariadb --network docker-network \
-v /usr/local/docker/mysql/mysql-files:/var/lib/mysql-files \
-v /usr/local/docker/mysql/conf:/etc/mysql \
-v /usr/local/docker/mysql/logs:/var/log/mysql \
-v /usr/local/docker/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mariadb
--restart=always
--name启动容器设置容器名称为mariadb
-p设置容器的3306端口映射到主机3306端口
-e MYSQL_ROOT_PASSWORD设置环境变量数据库root用户密码为输入数据库root用户的密码
-v设置容器目录/var/lib/mysql映射到本地目录/data/mariadb/data
-d后台运行容器mariadb并返回容器id
--network t-net 容器之间互联
# 查看容器是否运行
docker ps -a
# 修改容器为自启动
docker container update --restart=always 容器id
# 进入容器
docker exec -it 容器Id bash
# 在容器内登录数据库
mysql -uroot -proot密码
# 授权用户登录数据库
grant all on *.* to 'root'@'%' identified by '密码';
# 刷新权限
Flush privileges;
三、REDIS
# 拉取镜像文件
docker pull redis
# 准备配置文件,创建redis配置文件目录
mkdir -p /usr/local/docker/redis01/conf
# 在配置文件录下创建redis.conf配置文件(这个文件一定要创建,否在我们进行目录挂载时默认生成的是一个目录)
touch /usr/local/docker/redis01/conf/redis.conf
# 创建redis实例并启动
docker run -p 6379:6379 --name redis --network docker-network --restart=always \
-v /usr/local/docker/redis/data:/data \
-v /usr/local/docker/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf \
--appendonly yes
--requirepass 000415
--restart=always 总是开机启动
--log是日志方面的
-p 6379:6379 将6379端口挂载出去
--name 给这个容器取一个名字
-v 数据卷挂载 /home/redis/myredis/redis.conf:/etc/redis/redis.conf 这里是将 liunx 路径下的myredis.conf 和redis下的redis.conf 挂载在一起。/home/redis/myredis/data:/data 这个同上
-d redis 表示后台启动redis
redis-server /etc/redis/redis.conf 以配置文件启动redis,加载容器内的conf文件,最终找到的是挂载的目录/etc/redis/redis.conf 也就是liunx下的/home/redis/myredis/myredis.conf
--appendonly yes 开启redis 持久化
--requirepass 000415 设置密码
# 登录redis
docker exec -it redis redis-cli
# 输入密码
auth 密码
四、NACOS
# 拉取镜像
docker pull nacos/nacos-server:1.4.1
# 运行容器
docker run \
-e TZ="Asia/Shanghai" \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_DATABASE_NUM=1 \
-e MYSQL_SERVICE_HOST=172.18.0.2 \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=nacos_config \
-e MYSQL_SERVICE_PASSWORD=nacos \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-p 8848:8848 \
--name nacos --network docker-network \
--restart=always \
-d nacos/nacos-server:1.4.1
# 检查启动日志,例如:
docker container logs nacos
五、Nginx
# 创建数据卷
docker volume create nginx-vol
# 查看数据卷对应的宿主机目录,可以通过如下指令:
docker inspect nginx-vol
# 启动容器
docker run --name nginx --network docker-network -p 80:80 \
-v /usr/local/docker/nginx/conf:/etc/nginx \
-v /usr/local/docker/nginx/log:/var/log/nginx \
-v /usr/local/docker/nginx/html:/usr/share/nginx \
--restart=always -d nginx