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

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.mzph.cn/news/749647.shtml

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

相关文章

145 Linux 网络编程1 ,协议,C/S B/S ,OSI 7层模型,TCP/IP 4层模型,

一 协议的概念 从应用的角度出发&#xff0c;协议可理解为“规则”&#xff0c;是数据传输和数据的解释的规则。 典型协议 传输层 常见协议有TCP/UDP协议。 应用层 常见的协议有HTTP协议&#xff0c;FTP协议。 网络层 常见协议有IP协议、ICMP协议、IGMP协议。 网络接口层 常…

springboot“涛宝”大学生二手物品交易商城

摘 要 二十一世纪我们的社会进入了信息时代&#xff0c;信息管理系统的建立&#xff0c;大大提高了人们信息化水平。传统的管理方式对时间、地点的限制太多&#xff0c;而在线管理系统刚好能满足这些需求&#xff0c;在线管理系统突破了传统管理方式的局限性。于是本文针对这一…

Kubernetes operator系列:webhook 知识学习

云原生学习路线导航页&#xff08;持续更新中&#xff09; 本文是 Kubernetes operator学习 系列文章&#xff0c;本节会对 kubernetes webhook 知识进行学习 本文的所有代码&#xff0c;都存储于github代码库&#xff1a;https://github.com/graham924/share-code-operator-st…

免费接口调用 招标信息自动抽取|招标信息|招标数据解析接口

一、开源项目介绍 一款多模态AI能力引擎&#xff0c;专注于提供自然语言处理&#xff08;NLP&#xff09;、情感分析、实体识别、图像识别与分类、OCR识别和语音识别等接口服务。该平台功能强大&#xff0c;支持本地化部署&#xff0c;并鼓励用户体验和开发者共同完善&#xf…

浅谈性能测试中的基准测试

在性能测试中有一种测试类型叫做基准测试。这篇文章&#xff0c;就聊聊关于基准测试的一些事儿。 1、定义 通过设计合理的测试方法&#xff0c;选用合适的测试工具和被测系统&#xff0c;实现对某个特定目标场景的某项性能指标进行定量的和可对比的测试。 2、特质 ①、可重…

软件实例,餐厅酒水寄存管理系统软件,酒水寄存登记表软件操作教程

软件实例&#xff0c;餐厅酒水寄存管理系统软件&#xff0c;酒水寄存登记表软件操作教程 一、前言 以下软件操作以 佳易王酒水寄存管理系统软件V16.0为例说明 件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 1、酒水寄存管理系统软件可以管理多个品类的物…

AI健身教练-引体向上-俯卧撑计数-仰卧起坐姿态估计-康复训练姿态识别-姿态矫正

在AI健身应用中&#xff0c;通过关键点检测技术可以实现对用户动作的精准捕捉和分析&#xff0c;从而进行统计计数和规范性姿态识别。 统计计数&#xff1a;比如在做瑜伽、健身操等运动时&#xff0c;系统可以通过对人体关键点&#xff08;如手部、脚部、关节等&#xff09;的…

复习 --- windows 上安装 git,使用相关命令

文章目录 很少使用windows的git工具&#xff0c;这次借助这个任务&#xff0c;记录下使用过程&#xff0c;其他的等有空在整理。 其中&#xff0c;还使用了浏览器的AI小助手&#xff0c;复习了git相关的命令&#xff1a;图片放最后

ROS——集成开发环境搭建

1.4 ROS集成开发环境搭建 和大多数开发环境一样&#xff0c;理论上&#xff0c;在 ROS 中&#xff0c;只需要记事本就可以编写基本的 ROS 程序&#xff0c;但是工欲善其事必先利其器&#xff0c;为了提高开发效率&#xff0c;可以先安装集成开发工具和使用方便的工具:终端、ID…

YOLOv9算法原理——使用可编程梯度信息学习想要学习的内容

前言 2023年1月发布YOLOv8正式版后&#xff0c;经过一年多的等待&#xff0c;YOLOv9终于面世了&#xff01;YOLO是一种利用图像全局信息进行目标检测的系统。自从2015年Joseph Redmon、Ali Farhadi等人提出了第一代模型以来&#xff0c;该领域的研究者们已经对YOLO进行了多次更…

EOS 与ESD 区别

ESD: 英文&#xff1a;Electrical Static Discharge&#xff1b; 定义&#xff1a;不同静电电位的两个物体之间的电荷转移&#xff1b;中文释为静电放电。静电是一种客观的自然现象&#xff1b; EOS&#xff1a; 英文&#xff1a;Electrical Over Stress 定义&#xf…

钉钉小程序 - - - - - 如何通过一个链接打开小程序内的指定页面

方式1 钉钉小程序 scheme dingtalk://dingtalkclient/action/open_mini_app?miniAppId123&pagepages%2Findex%2Findex%3Fx%3D%25E4%25B8%25AD%25E6%2596%2587 方式2 https://applink.dingtalk.com/action/open_mini_app?type2&miniAppIdminiAppId&corpIdcorpId&…

spacy进行简单的自然语言处理的学习

自然语言处理基本概念 概念&#xff1a;自然语言处理&#xff0c;是让机器理解人的语言的过程。 作用&#xff1a;通过使用自然语言处理&#xff0c;机器可以理解人的语言&#xff0c;从而进行语义分析&#xff0c;例如&#xff1a;从一句话中判断喜怒哀乐&#xff1b;从一段文…

Unity类银河恶魔城学习记录10-12 p100 Improve aliments - chill源代码

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释&#xff0c;可供学习Alex教程的人参考 此代码仅为较上一P有所改变的代码 【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili CharacterStats.cs using System.Collections; using System.Collections…

计算机二级Python题目13

目录 1. 基本题 1.1 基本题1 1.2 基本题2 1.3 基本题3 2. turtle画图 3. 大题 3.1 大题1 3.2 大题2 1. 基本题 1.1 基本题1 lseval(input()) s"" for item in ls:if type(item)type("香山"):s item print(s) 1.2 基本题2 import random random.se…

说下你对TCP以及TCP三次握手四次挥手的理解?

参考自简单理解TCP三次握手四次挥手 什么是TCP协议&#xff1f; TCP( Transmission control protocol )即传输控制协议&#xff0c;是一种面向连接、可靠的数据传输协议&#xff0c;它是为了在不可靠的互联网上提供可靠的端到端字节流而专门设计的一个传输协议。 面向连接&a…

VMware的安装和Ubuntu的配置安装

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、linux是什么&#xff1f;二、基础知识虚拟机 三、安装VMware总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; Linux是一个功能…

Java项目:55 springboot基于SpringBoot的在线视频教育平台的设计与实现015

作者主页&#xff1a;舒克日记 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 在线视频教育平台分为管理员和用户、教师三个角色的权限模块。 管理员所能使用的功能主要有&#xff1a;首页、个人中心、用户管理、教师管理、课程信…

数据指标体系方法—UJM模型

了解 UJM UJM 模型&#xff0c;全称为 User-Journey-Map 模型&#xff0c;即用户旅途地图。 UJM 模型是用户在使用产品过程中的生命旅程&#xff0c;指用户从首次接触直至下单以及享受产品或服务期间&#xff0c;用户与企业产品或者平台互动的全过程。 用户旅途常常会和用户…

想兼职赚钱?盘点6个靠谱兼职,赚钱更轻松!

1&#xff0c;微头条搬砖 微头条搬砖是一个门槛不高的赚钱方式&#xff0c;而且不需要你有多么好的原创能力&#xff0c;去收集一些热门文章的素材进行文章伪原创&#xff0c;十分钟就能搞定&#xff0c;只要你的文章有爆点&#xff0c;足够吸人眼球&#xff0c;就能够获取不低…