docker安装 linux使用经验
一、docker compose 安装
# 步骤 1 - 安装 Docker 引擎 sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install -y docker-ce docker-ce-cli containerd.io # 步骤 2 - 启用服务 sudo systemctl enable --now docker # 步骤 3 - 安装 Compose 插件 sudo yum install -y docker-compose-plugin # 步骤 4 - 验证安装 docker compose version # 应输出:Docker Compose version v2.20.0 # 步骤 5 - 日志管理: sudo mkdir -p /etc/docker echo '{ "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } }' | sudo tee /etc/docker/daemon.json # 步骤 6 - 基础功能测试: # 创建测试 compose 文件 echo 'version: "3" services: web: image: nginx:alpine ports: - "8080:80"' > docker-compose.yml # 启动服务 docker compose up -d # 验证访问 curl http://localhost:8080 # 步骤 7 - 多容器网络测试: docker compose exec web ping db # 测试服务间通信 # 步骤 8 - 数据持久化测试: docker compose down -v # 清理测试环境
# 步骤 9 - 部署操作命令:
# 创建目录结构(如果不存在)
sudo mkdir -p /opt/web/{code,logs}
# 设置目录权限
sudo chmod -R 775 /opt/web
# 启动服务
docker compose up -d
# 查看日志
docker compose logs -f --tail=100
# 停止服务
docker compose down
# 步骤 10 - 常用操作命令:
查看运行状态
docker compose ps
查看实时日志
docker compose logs -f
重启服务
docker compose restart web
查看资源使用
docker compose stats
执行容器内命令
docker compose exec web sh
更新镜像并重新部署
docker compose up --force-recreate -d
一、docker安装
1. 卸载老版本 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine 2. 安装docker 基础包 yum install -y yum-utils \ device-mapper-persistent-data \ lvm2 3. 设置稳定仓库 yum-config-manager \ --add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 4. 安装Docker Engine - Community 安装最新版本(latest) yum install docker-ce docker-ce-cli containerd.io 安装指定版本 yum list docker-ce --showduplicates | sort -r #查看版本 sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io #安装指定版本 5. 启动与测试 sudo systemctl start docker # 启动docker
docker run hello-world #测试
6. 设置开机自动启动服务
systemctl enable docker
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 下载安装脚本 $ sudo python get-pip.py # 运行安装脚本 $ sudo python3 get-pip.py # 运行安装脚本。
软件成为服务运行
二、设置权限并启用服务 # 赋予服务文件权限 sudo chmod 644 /etc/systemd/system/frps.service # 重载systemd配置 sudo systemctl daemon-reload # 启用开机自启 sudo systemctl enable frps # 立即启动服务 sudo systemctl start frps 三、验证服务状态 # 检查运行状态 sudo systemctl status frps # 查看实时日志(按 Ctrl+C 退出) sudo journalctl -u frps -f # 测试自动重启(手动杀死进程后观察恢复) sudo killall frps && sleep 6 && systemctl status frps 七、卸载服务方法 sudo systemctl stop frps sudo systemctl disable frps sudo rm /etc/systemd/system/frps.service sudo systemctl daemon-reload 六、故障排查命令 场景 命令 服务启动失败 sudo journalctl -u frps -xe --no-pager 端口占用检查 sudo ss -tunlp | grep -E '7000|7500' 配置文件验证 sudo /opt/frp/frps verify -c /opt/frp/frps.ini 进程资源监控 sudo top -p $(pgrep -f frps)
sentinel
[redis V2.0] docker run -itd -e TZ="Asia/Shanghai" --restart=always \ --network host \ --privileged=true \ --name redis-0 \ -v /opt/redis/redis.conf:/etc/redis/redis.conf \ -v /opt/redis/data:/data \ redis:6.0 redis-server /etc/redis/redis.conf --requirepass "Emixx8089" [sentinel V2.0] docker run -itd -e TZ="Asia/Shanghai" --restart=always \ --network host \ --name sentinel \ -v /opt/sentinel:/etc/redis \ -d redis /bin/bash docker exec -it sentinel /bin/bash -c 'redis-sentinel /etc/redis/sentinel.conf'
连接到某个哨兵节点:
[root@pg-0 sentinel]# docker exec -it redis-0 /bin/bash root@pg-0:/data# redis-cli -h 172.16.227.226 -p 26379
哨兵常用命令:
(1)info 查看sentinel的状态 (2)sentinel masters 获取sentinel中监控的所有master的节点 (3)sentinel master <master-name> 获取master-name节点redis的状态信息 (4)sentinel slaves <master-name> 获取master-name节点下所有的slaves的状态信息。 (5) SENTINEL get-master-addr-by-name 通过sentinel中的节点名获取其ip地址
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix