AnolisOS 8中使用Docker部署(全)

介绍

本文主要作为个人记录使用,初学者有意也可以作为一点参考。

AnolisOS 8安装

一、下载系统镜像

我们直接进入到龙蜥官网进行下载:https://mirrors.openanolis.cn/anolis/8.8/isos/GA/x86_64/
在这里插入图片描述
官方文档:https://docs.openanolis.cn/products/anolis/rnotes/anolis-8.8.html#21-iso-%E9%95%9C%E5%83%8F

二、创建AnolisOS虚拟机

1、我们使用VMware Workstation工具来创建AnolisOS 8虚拟机,点击创建新的虚拟机然后选择典型进入下一步。
在这里插入图片描述
2、然后我们选择稍后安装操作系统,系统镜像后面再配置,然后点击下一步。
在这里插入图片描述
3、我们这里操作系统选择Linux,版本选择CentOS 7 64位(有需要的同学可以选择CentOS 8),然后点击下一步。
在这里插入图片描述
4、设置虚拟机名称和安装位置,点击下一步。
在这里插入图片描述
5、设置磁盘大小,根据情况自行调整,点击下一步。
在这里插入图片描述
6、最后点击完成即可。
在这里插入图片描述
7、放回主页面后,选择创建刚刚的虚拟机,然后点击编辑虚拟机设置。
在这里插入图片描述
8、设置情况自行虚拟机内存、处理器大小,然后配置ISO文件(第一步下载下来的文件),完成后点击确定。
在这里插入图片描述
9、编辑完成后点击开机虚拟机。
在这里插入图片描述
10、初始化虚拟机选择第一项即可。
在这里插入图片描述
11、设置语言后点击继续。
在这里插入图片描述
12、选择安装目的地。
在这里插入图片描述
13、选择自动,然后点击完成。
在这里插入图片描述
14、然后设置root密码
在这里插入图片描述
15、设置好后,点击完成。
在这里插入图片描述
17、都设置完成后点击,开始安装。(安装的时间较久)
在这里插入图片描述
18、安装完成之后,点击重启系统。
在这里插入图片描述
19、系统重启之后需要进行初始化设置,主要是授权许可,根据自身需求创建用户。
在这里插入图片描述
20、选择我同意许可协议,然后点击完成。
在这里插入图片描述
21、设置完成之后,点击结束配置。
在这里插入图片描述
22、加载完成之后就可以进入AnolisOS系统了,然后开始配置一些系统信息吗,到此安装就结束了。
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述23、连接网络,点击右上角菜单栏,然后如图操作即可接入本机网络。
在这里插入图片描述
24、点击活动,选择终端,输入ifconfig查看当前虚拟机IP地址,以便后续使用Xshell等工具进行连接。
在这里插入图片描述
在这里插入图片描述

三、AnolisOs默认防火墙常用命令

  • 检查 firewalld 状态
sudo systemctl status firewalld
  • 启动 firewalld 服务
sudo systemctl start firewalld
  • 停止 firewalld 服务
sudo systemctl stop firewalld
  • 重启 firewalld 服务
sudo systemctl restart firewalld
  • 查看当前激活的防火墙规则
sudo firewall-cmd --list-all
  • 查看指定区域的规则
sudo firewall-cmd --list-all --zone=public
  • 添加规则(例如,允许端口)
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
  • 删除规则
sudo firewall-cmd --zone=public --remove-port=80/tcp --permanent
  • 重新加载防火墙规则
sudo firewall-cmd --reload
  • 验证端口是否已开放
sudo firewall-cmd --list-ports

四、Docker安装启动(在线版)

1、删除老版本

sudo yum remove docker \
                docker-client \
                docker-client-latest \
                docker-common \
                docker-latest \
                docker-latest-logrotate \
                docker-logrotate \
                docker-engine

在这里插入图片描述
2、安装工具包

sudo yum install -y yum-utils

在这里插入图片描述
3、设置仓库

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

在这里插入图片描述
4、安装docker引擎
建议切换至root账号

su -

安装最新版本的docker CE

sudo yum install -y docker-ce

在这里插入图片描述
注:如果在安装docker CE中出现以下报错,可以执行以下两行命令,删除之后重新执行安装docker CE命令

rpm -qa|greap runc
yum remove runc

在这里插入图片描述
5、启动docker CE并设置开机自启

sudo systemctl start docker
sudo systemctl enable docker

在这里插入图片描述
6、设置阿里云镜像仓库
地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
登录自己的阿里云账号,复制代码执行
在这里插入图片描述
在这里插入图片描述
7、检查docker是否成功运行

sudo systemctl status docker.service

在这里插入图片描述
看到运行状态已经变为running即可,到此Docker的安装已经结束

五、Docker中常用的命令

  • 查看docker版本
docker version
  • 查看docker信息
docker info
  • 重启docker
sudo systemctl restart docker
  • 通过docker镜像运行一个新容器(以MySQL举例)
docker run -p 3306:3306 --name mysql \
-v /usr/local/mysql/log:/var/log/mysql \
-v /usr/local/data:/var/lib/mysql \
-v /usr/local/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7
####这里往下是解释,不需要粘贴到linux上#############
--name 指定容器名字
-v 将对应文件挂载到linux主机上(主机文件地址:容器映射地址)
-e 初始化密码
-p 容器端口映射到主机的端口(把容器的3306映射到linux中3306,这样windows上就可以通过Navicat访问这个数据库)
-d 后台运行
  • 查看docker容器日志
docker logs <容器名orID>
  • 查看docker容器
1、docker ps            ---- 查看当前运行的容器

2、docker ps -a             ---- 查看全部容器
  • 进入docker容器
docker exec -it <容器名orID> bash
  • 启动docker容器
docker start
  • 关闭docker容器
docker stop
  • 重启docker容器
docker restart
  • 删除docker容器
docker rm <容器id>
  • 删除docker镜像
docker rmi <镜像id>
  • 将docker容器保存为 tar 包
1、docker commit <容器id> <镜像名>:<tag>     ---- 将容器保存成镜像
 
2、docker save -o <tar包名>.tar <镜像名>:<tag>      ---- 将镜像保存为.tar文件,默认保存在当前目录

3、docker images ---- 查看docker镜像

  • 从 tar 包导入docker镜像
1、docker load -i <tar包名>.tar     ---- 从 tar 包导入镜像
 
2、docker run -itd -p <本地端口>:<容器端口> <镜像名>:<tag>    ---- 通过镜像起容器

六、使用Docker安装MySQL

1、拉取MySql镜像(如果已经导入了MySQL镜像,省略该步骤)

sudo docker pull mysql:5.7
sudo docker images

在这里插入图片描述
2、创建MySQL配置文件
在这里插入图片描述
在conf文件夹中加入my.ini文件
在这里插入图片描述
my.ini配置文件如下:

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
port=3306
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
lower_case_table_names=1
skip-name-resolve

3、docker启动MySQL

sudo docker run -p 3306:3306 --name mysql \
-v /usr/local/mysql/log:/var/log/mysql \
-v /usr/local/mysql/data:/var/lib/mysql \
-v /usr/local/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:5.7

输入docker ps - a查看mysql运行情况
在这里插入图片描述
4、使用Navicat连接
在这里插入图片描述
到此docker中安装mysql完成

七、使用Docker安装Redis

1、拉取Redis镜像(如果已经导入了Redis镜像,省略该步骤)

sudo docker pull redis
sudo docker images

在这里插入图片描述
2、创建Redis配置文件目录
在这里插入图片描述
在conf中添加redis.config配置文件
在这里插入图片描述

# redis.config服务器配置 
 
# 绑定IP地址
#解除本地限制 注释bind 127.0.0.1  
#bind 127.0.0.1  
 
# 服务器端口号  
port 6379 
 
#配置密码,不要可以删掉
requirepass 123456
 
#这个配置不要会和docker -d 命令 冲突
# 服务器运行模式,Redis以守护进程方式运行,默认为no,改为yes意为以守护进程方式启动,可后台运行,除非kill进程,改为yes会使配置文件方式启动redis失败,如果后面redis启动失败,就将这个注释掉
daemonize no
 
#当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定(自定义)
#pidfile /data/dockerData/redis/run/redis6379.pid  
 
#默认为no,redis持久化,可以改为yes
appendonly yes
 
 
#当客户端闲置多长时间后关闭连接,如果指定为0,表示关闭该功能
timeout 60
# 服务器系统默认配置参数影响 Redis 的应用
maxclients 10000
tcp-keepalive 300
 
#指定在多长时间内,有多少次更新操作,就将数据同步到数据文件,可以多个条件配合(分别表示900秒(15分钟)内有1个更改,300秒(5分钟)内有10个更改以及60秒内有10000个更改)
save 900 1
save 300 10
save 60 10000
 
# 按需求调整 Redis 线程数
tcp-backlog 511
 
# 设置数据库数量,这里设置为16个数据库  
databases 16
 
# 启用 AOF, AOF常规配置
appendonly yes
appendfsync everysec
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb
 
 
# 慢查询阈值
slowlog-log-slower-than 10000
slowlog-max-len 128
 
 
# 是否记录系统日志,默认为yes  
syslog-enabled yes  
 
#指定日志记录级别,Redis总共支持四个级别:debug、verbose、notice、warning,默认为verbose
loglevel notice
  
# 日志输出文件,默认为stdout,也可以指定文件路径  
logfile stdout
 
# 日志文件
#logfile /usr/local/redis/redis-server.log
 

# 系统内存调优参数   
# 按需求设置
hash-max-ziplist-entries 512
hash-max-ziplist-value 64
list-max-ziplist-entries 512
list-max-ziplist-value 64
set-max-intset-entries 512
zset-max-ziplist-entries 128
zset-max-ziplist-value 64

3、启动redis容器

docker run -p 6379:6379 --name redis \
-v /usr/local/redis/data:/var/lib/redis \
-v /usr/local/redis/logs:/logs \
-v /usr/local/redis/conf/redis.conf:/etc/redis/redis.config \
-d redis redis-server /etc/redis/redis.config

4、查看redis容器启动情况

docker ps -a

在这里插入图片描述
5、使用Windows的Redis Desktop来连接Redis
在这里插入图片描述
到此docker中安装Redis结束。

八、使用Docker安装Nginx

1、拉取Nginx镜像(如果已经导入了Nginx镜像,省略该步骤)

docker pull nginx
sudo docker images

在这里插入图片描述
2、创建Nginx配置文件目录
在这里插入图片描述

  • html中放的是被Nginx代理的项目文件
  • logs中放的是Nginx日志文件
  • conf中放的是Nginx配置文件

在conf中添加nginx.config配置文件
在这里插入图片描述
3、启动Nginx容器

docker run -d --name nginx -p 80:80 -v /usr/local/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /usr/local/nginx/conf/conf.d:/etc/nginx/conf.d/ -v /usr/local/nginx/logs:/var/log/nginx -v /usr/local/nginx/html:/usr/local/nginx/html -e TZ=Asia/Shanghai --privileged=true nginx

在这里插入图片描述

-d:表示后台启动nginx
--name:容器名
-p 80:80 :将容器的80端口映射至宿主机的80端口
-v /usr/local/nginx/conf/nginx.confg:/etc/nginx/nginx.conf是将宿主机/usr/local/nginx/conf/nginx.confg与容器/etc/nginx/nginx.conf关联

4、浏览器访问ip:端口
在这里插入图片描述
到此Nginx安装结束。

九、使用Docker搭建Node.js项目容器

1、准备一份Dockerfile文件

# 使用Node.js 16.14.0官方镜像作为基础镜像
FROM node:16.14.0

# 设置工作目录(项目在服务器中的路径)
WORKDIR /usr/local/Web/test/

# 将应用程序文件复制到容器中(容器中的路径)
COPY . /usr/local/Web/test/

# 安装应用依赖
RUN npm install

# 暴露应用程序使用的端口
EXPOSE 8080

# 启动应用程序
CMD ["node", "app.js"]

2、将Dockerfile文件放入项目的根目录下面
在这里插入图片描述

3、进入到项目根路径下,构建镜像

cd /usr/local/Web/test/
docker build -t test:v1.0 .
docker images

在这里插入图片描述
4、启动Node.js容器

docker run --name test -d -v /usr/local/Web/test/:/usr/local/Web/test/ -p 8080:8080 test:v1.0

在这里插入图片描述
5、防火墙开放端口
在这里插入图片描述
6、浏览器访问项目
在这里插入图片描述
到此Node.js项目容器搭建结束。

结束语

本文参考资料

  1. https://blog.csdn.net/qq_52423918/article/details/128676085?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-1-128676085-blog-123379229.235v38pc_relevant_sort_base2&spm=1001.2101.3001.4242.2&utm_relevant_index=4
  2. https://zhuanlan.zhihu.com/p/54147784
  3. https://mp.weixin.qq.com/s?__biz=Mzg2OTcyMDc4NA==&mid=2247484672&idx=1&sn=556ab3ffea709fa1399c6ead0e1affd4&chksm=ce99f2bff9ee7ba90eda79e5edab77e41efbf2dc4b4d71a011169491e6e6784c0ac816ce8a31#rd
  4. https://zhuanlan.zhihu.com/p/54147784
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值