docker快速上手

 

docker快速上手

安装配置

 

# 移除旧版本
sudo dnf remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine
# 配置yum源
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
 
# 安装最新docker
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
 
# 启动 docker
sudo systemctl enable --now docker
 
# 设置开机启动
systemctl enable docker
 
# 配置加速 网上找最新的
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors":["https://mirror.ccs.tencentyun.com"]
}
EOF
# 重启进程
sudo systemctl daemon-reload 
# 重启docker
sudo systemctl restart docker

 

命令

 

#---------- 镜像
# 检索(镜像) https://hub.docker.com 慢的话直接下载
docker search
# 下载(镜像)
docker pull
# 查看已下载的镜像列表
docker images
# 删除某一个镜像
docker rmi
 
#------------ 容器
# 运行 *
docker run
# 查看
docker ps
# 停止
docker stop
# 启动
docker start
# 重启
docker restart
# 状态
docker status
# 日志
docker logs
# 进入
docker exec
# 删除
docker rm
# 批量删除
docker rm -f $(docker ps -aq)
 
#------------ 分享
# 提交
docker commit
# 保持
docker save
# 加载
docker load
# 登录
docker login
# 命名
docker tag
# 推送
docker push
 
#------------- 存储
# 目录挂载
docker run -v /[path]:/[path]
# 卷映射 docker 将卷统一存放在 /var/lib/docker/volumes/ 
docker run -v [name]:/[path]
 
#-------------网络
# 创建自定义网络
docker network create [name]
# 容器内访问其他容器
http://[容器名]:[容器内端口]

 

redis主从同步集群

 

# 主机
docker run -d -p 6379:6379 \
-v /var/lib/docker/volumes/redis-master-data:/bitnami/redis/data \
-e REDIS_REPLICATION_MODE=master \
-e REDIS_PASSWORD=123456 \
--network mynet \
--name redis-master \
bitnami/redis
 
# 从机
docker run -d -p 6380:6379 \
-v /var/lib/docker/volumes/redis-slave01-data:/bitnami/redis/data \
-e REDIS_REPLICATION_MODE=slave \
-e REDIS_MASTER_HOST=redis-master \
-e REDIS_MASTER_PORT_NUMBER=6379 \
-e REDIS_MASTER_PASSWORD=123456 \
-e REDIS_PASSWORD=123456 \
--network mynet \
--name redis-slave01 \
bitnami/redis

 

安装MySQL

 

docker run -d -p 3306:3306 \
-v /var/lib/docker/volumes/mysql-conf:/etc/mysql/conf.d \
-v mysql-data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
--name mysql \
mysql:8.0.37-debian

 

安装nginx

 

docker run -d  -p 80:80 \
-v nginx-conf:/etc/nginx \
-v /var/lib/docker/volumes/nginx-data:/usr/share/nginx/html \
--name nginx \
nginx
 

 

docker compose

 

name: app
services:nginx:container_name: nginximage: nginxports:- 80:80volumes:- nginx-conf:/etc/nginx- /var/lib/docker/volumes/nginx-data:/usr/share/nginx/htmlrestart: alwaysnetworks:- app-netredis-master:container_name: redis-masterimage: bitnami/redisports:- 6379:6379volumes:- /var/lib/docker/volumes/redis-master-data:/bitnami/redis/dataenvironment:- REDIS_REPLICATION_MODE=master- REDIS_PASSWORD=123456restart: alwaysnetworks:- app-netredis-slave01:container_name: redis-slave01image: bitnami/redisports:- 6380:6379volumes:- /var/lib/docker/volumes/redis-slave01-data:/bitnami/redis/dataenvironment:- REDIS_REPLICATION_MODE=slave- REDIS_MASTER_HOST=redis-master- REDIS_MASTER_PORT_NUMBER=6379- REDIS_MASTER_PASSWORD=123456- REDIS_PASSWORD=123456restart: alwaysnetworks:- app-netmysql:container_name: mysqlimage: mysql:8.0.37-debianports:- 3306:3306environment:- MYSQL_ROOT_PASSWORD=123456volumes:- mysql-conf:/etc/mysql/conf.d- /var/lib/docker/volumes/mysql-data:/var/lib/mysqlrestart: alwaysnetworks:- app-netvolumes:mysql-conf:nginx-conf:
 
networks:app-net:

 

compose 命令

 

# 上线(后台)
docker compose up -d
# 下线
docker compose down
# 启动
docker compose start [..appName] 
# 停止
docker compose stop [..appName] 
# 扩容
docker compose scale[appName]=[num]
 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/995773.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全球首个液冷迷你机!abee AI Station 395 Max工作站图赏

全球首个液冷迷你机!abee AI Station 395 Max工作站图赏Posted on 2025-12-10 01:22 lzhdim 阅读(0) 评论(0) 收藏 举报日前,abee AI Station 395 Max迷你液冷AI工作站发布,定价为17999元。 现在这款新品已经来…

Docker环境下Redis ACL实战踩坑记:权限、挂载与用户配置解析

Docker环境下Redis ACL实战踩坑指南:权限、挂载与用户配置解析 开篇:实战场景说明 最近在生产环境中部署Redis时,我们决定升级到Redis 7.0并启用ACL功能,以实现更精细化的权限控制。核心需求很简单:启用ACL功能,…

一例罗技M275鼠标空键程处理

笔者手中有一个罗技M275鼠标,最近发现鼠标空键程现象比较严重,不如手中另一只M215鼠标手感清脆、爽利。因此笔者尝试解决手中鼠标的空键程现象。 首先根据网络上已经提出的解决办法,打开鼠标,在鼠标左键和微动的接…

Alientech KESS V3: Master Bench-Boot Protocols Activation for Agri Trucks Buses

Overcoming Agriculture Truck & Bus Diagnostic Challenges: The Alientech KESS V3 KESS3 Master Solution In the world of agriculture truck and bus maintenance, downtime is a costly enemy. For European…

洛谷U640022 找割点 题解 点双连通分量

题目链接:https://www.luogu.com.cn/problem/U640022根节点要分割出至少 \(2\) 个连通块(因为根节点没有父节点那部分的连通块)。 其它节点只需要分割出至少 \(1\) 个连通块即可。对于一个 当前节点 \(u\),dfs 它的…

Alientech KESS V3 Master OBD Protocol Activation: Bike, ATV, UTV – Boost Repair Diagnostics

Mastering Protocol Activation for Bikes, ATVs, and UTVs: The Alientech KESS V3 Advantage Problem: Activation Challenges with Specialized Vehicles For European and American automotive professionals and …

第50天(中等题 数据结构)

打卡第五十天 2道中等题题目:思路:代码: class Solution { public:int numOfSubarrays(vector<int>& arr) {const int MODULO = 1000000007; int odd = 0, even = 1; // odd: 奇数前缀数量,ev…

Alientech KESS3 Master: Efficient OBD Protocols Activation for Agri Trucks Buses

Diagnosing the Challenges of Agricultural, Truck, and Bus Diagnostics For automotive professionals and owners working with agriculture, trucks, and buses, traditional diagnostic tools often fall short.…

内网环境-centos7.6配置chrom和flask项目

1.离线安装Anaconda, 配置python环境 #ip网络配置文件 vim /etc/sysconfig/network-scripts/ifcfg-ens33Linux安装Anaconda教程 2.离线安装chrome 2.1离线安装命令#使用 rpm命令强制安装 --nodeps选项会跳过依赖检查 r…

selenium其他重要的Api

元素等待方法 认识等待 由于⽹络或其他原因,元素未能及时加载出来,⽽代码已执⾏,会触发异常,故要设置等待。代码执⾏过程中,第⼀次未找到元素,先不抛出异常。激活等待时间,在等待过程中如果找到元素就执⾏。 隐…

洛谷P2860 [USACO06JAN] Redundant Paths G 题解 边双连通分量

题目链接:https://www.luogu.com.cn/problem/P2860 解题思路: 双连通分量缩点,设缩点后有 \(cnt\) 个度数为 \(1\) 的点。 则答案为 \(\lceil \frac{cnt}{2} \rceil\)(即 (cnt + 1) / 2)。 示例程序: #include &…

AI真好玩系列-免费解锁 Google Gemini 的几种方式

@目录🏢 1. Gemini Enterprise (企业版)💎 2. Google AI Studio (隐藏宝藏)🤖 3. Google Gemini (个人版)Conclusion | 结语 宝子们来啦!👋 听说你想体验 Google 最强的 AI,这里有一份超简单的「免费试用」攻…

# sg.计算器

# sg.计算器import PySimpleGUI as sg progress = sg.ProgressBar(100) num1_inp = sg.Input(size=5) num2_inp = sg.Input(size=5) result_txt = sg.Text() add_btn = sg.Button(add)layout=[[num1_inp,num2_inp,resu…

智能猫砂盆方案商权威推荐:技术驱动宠物养护新体验 - 星报

清晨的阳光透过窗帘洒进客厅,你手机收到一条推送:“猫咪今晨排泄物pH值正常,但饮水次数比平日减少15%”,在猫咪表现出任何不适症状前,健康预警已经悄然启动。 随着“它经济”的蓬勃发展,全球宠物产业预计到2030年…

网络线序问题了解

今天复习了一些内容,并且知道了双绞线分为直通线和交叉线。并且要按照一定的顺序打线,因为双绞线互相缠绕是用来抗干扰的如果胡乱接会导致电池干扰文件传输FTP: TCP 20 (Data), 21 (Control) SFTP / SSH: TCP 22 TFT…

洛谷U640024 找割边 题解

题目链接:https://www.luogu.com.cn/problem/U640024 边双连通分量 求 割边(桥) 模板题。 示例程序: #include <bits/stdc++.h> using namespace std; const int maxn = 1e4 + 5, maxm = 1e5 + 5;struct Edg…

Python 学习笔记(01)

Python 学习笔记 一、python 基础知识 1.1、Python 语句的缩进 Python代码块使用缩进对齐表示代码逻辑,而不是使用大括号。 # 这是注释,Python的注释使用#表示 print("Hello,World!") # 打印关于缩进的用…

Python Flask service provide data list and retrieve and display in chrome via html and javascript

//flask from flask import Flask,jsonify,send_from_directory from flask_cors import CORS import uuid import time import os import pandas as pd import csv from datetime import datetime import jsonbooks_l…

2025最新PC仿石砖增强剂品牌TOP5评测!绿色建材赋能市政工程,权威榜单发布 - 全局中转站

随着建筑装饰行业对绿色环保、高性能材料的需求日益增长,PC仿石砖增强剂作为提升市政砖材强度与美观度的关键产品,市场关注度持续攀升。本榜单基于环保性能、技术创新、工程适配性及服务体系四大维度,结合行业权威数…

图文并茂-手把手教宝子们3分钟用 GitHub Pages 搭建免费网站 (保姆级教程)

@目录🌟 第一步:准备好你的 GitHub 账号🌟 第二步:创建一个特殊的仓库 (Repository),配置网站🌟 第三步:把你的网站放上去哦🌟 第四步:配置GitHub Pages🌟 第五步:见证奇迹的时刻!🎉查看搭建状态查…