Docker使用(二)Docker安装和常见典型操作

news2024/12/23 0:48:58

Docker使用(二)Docker安装和常见典型操作

二、软件安装

1、Docker安装

(1)环境准备

[root@localhost ~]# uname -r

3.10.0-327.el7.x86_64

# cat /etc/os-release

在这里插入图片描述

(2)卸载旧版本

$ sudo yum remove docker \

​ docker-client \

​ docker-client-latest \

​ docker-common \

​ docker-latest \

​ docker-latest-logrotate \

​ docker-logrotate \

​ docker-engine

在这里插入图片描述

(3)安装软件包

安装yum-utils软件包(提供yum-config-manager 实用程序)并设置稳定的存储库。

$ sudo yum install -y yum-utils

[阿里云操作]:

# step 1: 安装必要的一些系统工具

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

(4)设置镜像仓库

$ 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

[阿里云操作]:

# Step 2: 添加软件源信息

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

Step 3: 更新下yum缓存索引

$ yum makecache fast

(5)安装docker引擎

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

(6)启动docker

$ sudo systemctl start docker

或者 $ sudo service docker start

systemctl enable docker //运行开机启动

如何判断成功:

[root@localhost ~]# docker version

在这里插入图片描述

(7)测试hello-world

$ sudo docker run hello-world

在这里插入图片描述

(8)查看images

[root@localhost ~]# docker images

在这里插入图片描述

(9)卸载docker

$ sudo yum remove docker-ce docker-ce-cli containerd.io

$ sudo rm -rf /var/lib/docker

2、阿里云镜像加速

(1)找到阿里云镜像加速服务

在这里插入图片描述

(2)配置镜像加速器

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-‘EOF’

{

“registry-mirrors”: [“https://25fgdfnn.mirror.aliyuncs.com”]

}

EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

三、常见典型操作

1、redis 安装
1.1 镜像安装

# docker run -p 6379:6379 --name my-redis -v /usr/local/workspace/redis/redis.conf:/etc/redis/redis.conf -v /usr/local/workspace/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes

命令说明:

-p 6379:6379:把容器内的6379端口映射到宿主机6379端口

-v /data/redis/redis.conf:/etc/redis/redis.conf:把宿主机配置好的redis.conf放到容器内的这个位置中

-v /data/redis/data:/data:把redis持久化的数据在宿主机内显示,做数据备份

redis-server /etc/redis/redis.conf:这个是关键配置,让redis不是无配置启动,而是按照这个redis.conf的配置启动

–appendonly yes:redis启动后数据持久化

============================================================================

1.2 docker镜像普通安装

docker images 查询到redis镜像

# docker run -it -d --name my-redis01 -p 6379:6379 redis

============================================================================

1.3 数据卷挂载(默认docker0网卡)

(1)在宿主机创建容器卷文件夹

mkdir workspace

cd /usr/local/workspace

创建配置文件所在文件夹:

mkdir /docker/redis/conf

创建Redis持久化文件所在文件夹:

mkdir /docker/redis/data

在conf文件夹下创建配置文件redis.conf

切记:不要配置daemonize yes,否则无法启动容器:启动后立即停止

(2)创建并启动容器

[root@localhost redis]# pwd

/usr/local/workspace/docker/redis

[root@localhost redis]# docker run -d --privileged=true -p 6379:6379 -v $pwd/conf/redis.conf:/etc/redis/redis.conf -v $pwd/data:/data --name myredis01 redis redis-server /etc/redis/redis.conf --appendonly yes

$pwd :代表当前目录

–privileged=true:容器内的root拥有真正root权限,否则容器内root只是外部普通用户权限

-v :指定数据卷绑定

redis-server /etc/redis/redis.conf:指定配置文件启动redis-server进程

–appendonly yes:开启数据持久化

在这里插入图片描述

这里是在默认docker0网卡上。

============================================================================

1.4 自定义网卡

其他都一样,创建容器时候采用自定义网络

创建并启动容器

[root@localhost redis]# docker run -d --privileged=true -p 7379:6379 -v $pwd/conf/redis.conf:/etc/redis/redis.conf -v $pwd/data:/data --name mynet_redis01 –net mynet redis redis-server /etc/redis/redis.conf --appendonly yes

============================================================================

2、mysql 安装
2.1 基本镜像安装

# docker run -p 13306:3306 --name my-mysql -v /usr/local/workspace/mysql/conf:/etc/mysql -v /usr/local/workspace/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d

mysql:5.7

命令说明:

**-p ** 13306:3306 将容器的 3306 端口映射到主机的 3306 端口

–name my-mysql 启动后容器名为 my-mysql

-v $PWD/conf:/etc/mysql 将主机当前目录下的 conf/ 挂载到容器 /etc/mysql (conf目录为mysql的配置文件,不挂载也没问题)

-v $PWD/logs:/logs   将主机当前目录下的 logs 目录挂载到容器的 /logs (logs目录为mysql的日志目录,不挂载也没影响)

-v $PWD/data:/var/lib/mysql  将主机当前目录下的data目录挂载到容器的 /var/lib/mysql (data目录为mysql配置的数据文件存放路径,这个还是建议挂载,是存储数据的,容器down掉,还能再次挂载数据。)

-e MYSQL_ROOT_PASSWORD=123456  初始化 root 用户的密码

============================================================================

2.2 持久化安装

思考:mysql 的数据持久化问题

# 获取镜像

[root@localhost ~]# docker pull mysql:5.7

# 运行容器,需要做挂载!

# 安装启动mysql,需要配置密码,这是需要注意的!

#官方测试:

$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

#启动容器

-d 后台运行

-p 端口映射

-v 卷挂载

–name 容器名字

[root@localhost ~]# docker run -d -p 3310:3306 -v /home/mysql/conf:/etc/mysql/conf.d -v /home/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 --name mysql01 mysql:5.7

3、tomcat镜像安装

#docker run -it -d --name tomcat03 -p 3377:8080 tomcat

在这里插入图片描述

由于:官方镜像阉割了

解决:

进入容器

# docker exec -it 62131a77690a /bin/bash

# cp -r webapps.dist/* webapps

解决了

4、portainer

# docker run -d -p 9000:9000 \

–restart=always -v /var/run/docker/sock:/var/run/docker.sock --privileged=true portainer/portainer

在这里插入图片描述

账户:admin 密码:改成自己的密码

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

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

相关文章

OpenCV4.9.0开源计算机视觉库在 Linux 中安装

返回目录&#xff1a;OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV 环境变量参考 下一篇&#xff1a;将OpenCV与gcc和CMake结合使用 引言&#xff1a; OpenCV是一个开源的计算机视觉库&#xff0c;由英特尔公司所赞助。它是一个跨…

KBP210-ASEMI新能源专用整流桥KBP210

编辑&#xff1a;ll KBP210-ASEMI新能源专用整流桥KBP210 型号&#xff1a;KBP210 品牌&#xff1a;ASEMI 封装&#xff1a;KBP-4 正向电流&#xff08;Id&#xff09;&#xff1a;2A 反向耐压&#xff08;VRRM&#xff09;&#xff1a;1000V 正向浪涌电流&#xff1a;6…

SpingBoot集成Rabbitmq及Docker部署

文章目录 介绍RabbitMQ的特点Rabbitmq术语消息发布接收流程 Docker部署管理界面说明Overview: 这个页面显示了RabbitMQ服务器的一般信息&#xff0c;例如集群节点的名字、状态、运行时间等。Connections: 在这里&#xff0c;可以查看、管理和关闭当前所有的TCP连接。Channels: …

#QT(定时轮播电子相册)

1.IDE&#xff1a;QTCreator 2.实验&#xff1a; &#xff08;1&#xff09;使用QOBJECT的TIMER &#xff08;2&#xff09;EVENT时间 &#xff08;3&#xff09;多定时器定时溢出判断 &#xff08;4&#xff09;QLABEL填充图片 3.记录 4.代码 widget.h #ifndef WIDGET_H…

数星星 刷题笔记 (树状数组)

依题意 要求每个点 x, y 的左下方有多少个星星 又因为 是按照y从小到大 给出的 所以 我们在计算个数的时候是按照y一层层变大来遍历的 因此我们在处理每一个点的时候 只需要看一下 当前的点有多少个点的x值比当前点小即可 树状数组的 操作模板 P3374 【模板】树…

R语言实现中介分析(1)

中介分析&#xff0c;也称为介导分析&#xff0c;是统计学中的一种方法&#xff0c;它用于评估一个或多个中介变量&#xff08;也称为中间变量&#xff09;在自变量和因变量之间关系中所起的作用。换句话说&#xff0c;中介分析用于探索自变量如何通过中介变量影响因变量的机制…

Python-GIS分析之地理数据空间聚类

地理空间数据聚类是空间分析和地理信息系统(GIS)领域的一项关键技术。这种方法对于理解地理数据固有的空间模式和结构、促进城市规划、环境管理、交通和公共卫生等各个领域的决策过程至关重要。本文探讨了地理空间数据聚类的概念、方法、应用、挑战和未来方向。 当模式出现…

《计算机视觉中的深度学习》之目标检测算法原理

参考&#xff1a;《计算机视觉中的深度学习》 概述 目标检测的挑战&#xff1a; 减少目标定位的准确度减少背景干扰提高目标定位的准确度 目标检测系统常用评价指标&#xff1a;检测速度和精度 提高精度&#xff1a;有效排除背景&#xff0c;光照和噪声的影响 提高检测速度…

wsl ubuntu 安装cuda nvcc环境

wsl ubuntu 安装cuda环境&#xff1a; CUDA Toolkit 11.6 Downloads | NVIDIA DeveloperDownload CUDA Toolkit 11.6 for Linux and Windows operating systems.https://developer.nvidia.com/cuda-11-6-0-download-archive?target_osLinux&target_archx86_64&Distri…

介绍一款鼠标无边界软件

"Mouse without Borders" 是一款由微软开发的免费工具&#xff0c;旨在帮助用户在多台计算机之间实现无缝的鼠标和键盘共享。通过 Mouse without Borders&#xff0c;用户可以在一个主控制台上控制多台计算机&#xff0c;就像操作一个大型虚拟桌面一样。 这个工具可…

MySQL安装(Mac系统)

首先要删除本机原有的mysql 停止MySQL服务 sudo /usr/local/mysql/support-files/mysql.server stop不放心可以使用以下命令查询并杀死进程 ps aux | grep mysqld sudo kill <PID>再次尝试停止服务 sudo /usr/local/mysql/support-files/mysql.server stop卸载MySQL&…

C#对ListBox控件中的数据进行的操作

目录 1.添加数据&#xff1a; 2.删除数据&#xff1a; 3.清空数据&#xff1a; 4.选择项&#xff1a; 5.排序&#xff1a; 6.获取选中的项&#xff1a; 7.获取ListBox中的所有项&#xff1a; 8.综合示例 C#中对ListBox控件中的数据进行的操作主要包括添加、删除、清空、…

(一)、机器人时间同步方案分析

1、是否有必要进行时间同步 目前的自动驾驶系统包括 感知、定位、决策规划、控制 等模块&#xff0c;这些模块的正常运行需要依靠各种不同类型的传感器数据的准确 融合。尤其是激光雷达与相机这两种传感器在感、知定位模块中起着至关重要的作用。机械式旋转扫描激光雷达本身较低…

基于FPGA的光纤通信系统的实现的优化技巧与方法

逻辑电路基本框架回顾 跨时钟域同步技术 读写操作相互独立时钟域 A 和 B 不需要一致的相位由专门逻辑控制读写操作的切换 高速数据的乒乓缓存技术

【计算机网络】https的工作原理以及和http的区别

目录 前言 1. HTTP协议存在的问题 2. 什么是HTTPS协议&#xff1f; 3. HTTP和HTTPS有哪些区别&#xff1f; 4. HTTPS的工作原理 加密方式 前言 在日常的Web项目练习中&#xff0c;我们会发现老师会让我们在打开服务器之后使用 http://localhost/...进行项目效果测试和预览…

Spark-Scala语言实战(2)(在IDEA中安装Scala,超详细配图)

之前的文章中&#xff0c;我们学习了如何在windows下下载及使用Scala&#xff0c;但那对一个真正想深入学习Scala的人来说&#xff0c;是不够的&#xff0c;今天我会给大家带来如何在IDEA中安装Scala。同时&#xff0c;希望我的文章能帮助到你&#xff0c;如果觉得我的文章写的…

游戏引擎中的动画基础

一、动画技术简介 视觉残留理论 - 影像在我们的视网膜上残留1/24s。 游戏中动画面临的挑战&#xff1a; 交互&#xff1a;游戏中的玩家动画需要和场景中的物体进行交互。实时&#xff1a;最慢需要在1/30秒内算完所有的场景渲染和动画数据。&#xff08;可以用动画压缩解决&am…

R语言深度学习-5-深度前馈神经网络

本教程参考《RDeepLearningEssential》 本篇我们将学习如何建立并训练深度预测模型。我们将关注深度前馈神经网络 5.1 深度前馈神经网络 我们还是使用之前提到的H2O包&#xff0c;详细可以见之前的博客&#xff1a;R语言深度学习-1-深度学习入门&#xff08;H2O包安装报错解决…

Spring炼气之路(炼气一层)

目录 一、IOC 1.1 控制反转是什么&#xff1f; 1.2 什么是IOC容器&#xff1f; 1.3 IOC容器的作用 1.4 IOC容器存放的是什么&#xff1f; 二、DI 2.1 依赖注入是什么&#xff1f; 2.2 依赖注入的作用 三、IOC案例实现 3.1下载Maven 3.2 配置Maven中的settings.xml文…

Stable Diffusion科普文章【附升级gpt4.0秘笈】

随着人工智能技术的飞速发展&#xff0c;我们越来越多地看到计算机生成的艺术作品出现在我们的生活中。其中&#xff0c;Stable Diffusion作为一种创新的图像生成技术&#xff0c;正在引领一场艺术创作的革命。本文将为您科普Stable Diffusion的相关知识&#xff0c;带您走进这…