docker的安装和使用

这篇博客详细介绍了在CentOS系统上安装和配置Docker的过程,并提供了安装JDK、MySQL、Redis、Nacos以及Minio的步骤。通过设置镜像源、启动和管理Docker服务,以及配置环境变量,确保了软件的顺利安装。同时,还涉及到了数据库的连接和配置,以及使用数据卷持久化数据。对于Nacos,给出了两种安装方法以应对不同场景。最后,介绍了如何部署Minio服务器并设置访问权限。
摘要由CSDN通过智能技术生成

安装docker

创建docker存放的文件夹,cd跳转到文件夹

1.安装一组工具

sudo yum install -y yum-utils 

2.设置 yum 仓库地址

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
sudo yum-config-manager \
     --add-repo \
     http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

3.更新 yum 缓存

sudo yum makecache fast #yum 是包管理器

4.安装新版 docker

sudo yum install -y docker-ce docker-ce-cli containerd.io

5.启动docker

 systemctl start docker

6.查看docker是否运行

systemctl status docker

7.停止docker

systemctl stop docker

8.设置docket开机自启

systemctl enable docker

9. 设置docker镜像,提高速度(下代码自动创建daemon.json文件)

cat <<EOF > /opt/docker/daemon.json
{
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "http://hub-mirror.c.163.com"
  ],
  "max-concurrent-downloads": 10,
  "log-driver": "json-file",
  "log-level": "warn",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
    },
  "data-root": "/opt/docker"
}
EOF

补充指令:

关闭docker开机自启

systemctl disable docker

重启docker

 systemctl restart docker

安装jdk(使用容器的方法,不能使用环境变量,一直解决不了,换了一种方式)

1.上传下载好的liux的jdk到自己定义的目录

2.解压jdk的文件

tar -xvf jdk-8u51-linux-x64.tar.gz

3.修改名字为简单的名字(容易操作)

 mv jdk1.8.0_51 jdk1.8

4.cd到/etc目录,vi修改/etc/profile文件,添加以下配置(设置环境变量)

#设定jdk环境
export JAVA_HOME=自己jdk解压的位置 和winds的思想是一样的
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib

5.让环境变量生效

source /etc/profile

安装mysql数据库

1.拉取指定版本的数据库

 docker pull mysql:8.0.23

2.检察mysql镜像

 docker images

3.启动mysql镜像且挂载

sudo docker run -p 3306:3306 --name mysql \
-v /opt/docker/mysql/mysql-files:/opt/var/lib/mysql-files \
-v /opt/docker/mysql/conf:/opt/etc/mysql \
-v /opt/docker/mysql/logs:/opt/var/log/mysql \
-v /opt/docker/mysql/data:/opt/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:8.0.23

 4.启动mysql

docker start mysql

5.设置mysql开机自启动(可选)

docker update mysql --restart=always

补充指令:

进入容器

sudo docker exec -it mysql bash

登陆(默认密码root),一定要先进入mysql容器。

mysql -uroot -proot

停止mysql

docker stop mysql

安装redis

1.拉取指定redis

docker pull redis

2.创建redis配置目录

mkdir -p /opt/docker/redis/conf

3.创建配置文件redis.conf

touch /opt/docker/redis/conf/redis.conf

4.创建redis实例且启动

sudo docker run -p 6379:6379 --name redis \
-v /opt/docker/redis/data:/data \
-v /opt/docker/redis/conf/redis.conf:/opt/etc/redis/redis.conf \
-d redis redis-server /opt/etc/redis/redis.conf 

5.查看当前进程

docker ps

6.启动redis

docker stop redis

补充指令:

  停止redis

docker stop redis

重启redis

docker restart redis

控制台直接连接redis测试

docker exec -it redis bash

检测redis 版本

redis-server  -v
或者
redis-cli -v

登录redis(默认不需要密码)

redis-cli

或者直接将上面的两个步骤合为一个步骤执行也可以,指令如下:

docker exec -it redis01 redis-cli

安装nginx代理

1.拉取nginx镜像

docker pull nginx

2.查看全部镜像

docker images

3.创建数据卷

docker volume create nginx-vol

4.查看数据卷对应的目录

docker inspect nginx-vol

5.启动nginx服务

docker run --name nginx  -p 80:80 -v nginx-vol:/opt/etc/nginx -d nginx

注意:这种方式只能使用进入容器修改config,使用挂载的方式配置配置文件

命令:
mkdir -p /data/nginx
mkdir -p /data/nginx/www
mkdir -p /data/nginx/conf
mkdir -p /data/nginx/logs
docker stop 97f903057e0c
docker rm 97f903057e0c
docker run --name nginx -p 8090:80 -d nginx
docker cp 97f903057e0c:/etc/nginx/nginx.conf /data/nginx
docker cp 97f903057e0c:/etc/nginx/conf.d /data/nginx/conf
docker cp 97f903057e0c:/usr/share/nginx/html /data/nginx/www
docker cp 97f903057e0c:/var/log/nginx /data/nginx/logs

补充指令:

停止nginx服务

docker stop nginx

启动nginx

docker start nginx

重启nginx服务

docker restart nginx

安装nacos组件

方法一:(安装方便,但可能出现nacos无限重启的情况)

1.拉取nacos

docker pull nacos/nacos-server:1.4.1

2.链接数据库将nacos的sql导进数据库

3.创建并启动nacos容器

docker run  \
-e TZ="Asia/Shanghai" \
-e MODE=standalone \
-e SPRING_DATASOURCE_PLATFORM=mysql \
-e MYSQL_DATABASE_NUM=1 \
-e MYSQL_SERVICE_HOST=自己服务器的ip \
-e MYSQL_SERVICE_PORT=3306 \
-e MYSQL_SERVICE_USER=root \
-e MYSQL_SERVICE_PASSWORD=root \
-e MYSQL_SERVICE_DB_NAME=nacos_config \
-p 8848:8848 \
--name nacos \
--restart=always \
-d nacos/nacos-server:1.4.1

方法二:

将nacos-config.sql运行到数据库

1.搜索nacos镜像

docker search nacos

2.下载nacos镜像

docker pull nacos/nacos-server

3.新建logs目录

mkdir -p /mydata/nacos/logs/                      
mkdir -p /mydata/nacos/init.d/ 

4.修改配置文件

vim /mydata/nacos/init.d/custom.properties

5.配置文件

server.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848

spring.datasource.platform=mysql
#这里的数据库连接信息更改成我们前面准备好的nacos数据库
db.num=1
db.url.0=jdbc:mysql://82.156.217.114:3306/nacos_config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root


nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false

management.metrics.export.elastic.enabled=false

management.metrics.export.influx.enabled=false


server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i


nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true

6.创建实例  --开始运行

docker  run \
--name nacos -d \
-p 8848:8848 \
--privileged=true \
--restart=always \
-e JVM_XMS=256m \
-e JVM_XMX=256m \
-e MODE=standalone \
-e PREFER_HOST_MODE=hostname \
-v /mydata/nacos/logs:/home/nacos/logs \
-v /mydata/nacos/init.d/custom.properties:/home/nacos/init.d/custom.properties \
nacos/nacos-server

7.配置容器自启动

docker update nacos --restart=always

minio服务器的安装

1.拉取minio

docker pull minio/minio:RELEASE.2022-01-03T18-22-58Z

2.运行minio(9000是服务间通讯端口,9001是访问控制界面的端口)

 docker run \
    -p 9000:9000 \
    -p 9001:9001 \
    --name carpxt-minio \
    -d --restart=always \
    -v /carpxt/data/minio/data:/data \
    -e "MINIO_ROOT_USER=minioadmin" \
    -e "MINIO_ROOT_PASSWORD=minioadmin" \
    minio/minio:RELEASE.2022-01-03T18-22-58Z server /data --console-address ":9001"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值