一、docker的安装与踩坑

目录

  • 一、安装docker(centos7安装docker)
    • 1.安装环境前期准备
    • 2.参考官网安装前准备
    • 3.参考官网安装步骤开始安装docker
    • 4.运行首个容器
  • 二、安装一些软件的踩坑
    • 1.启动docker踩坑
    • 2.安装mysql踩坑
    • 3.罕见问题
  • 三、关于我的虚拟机

一、安装docker(centos7安装docker)

1.安装环境前期准备

查询linux相关参数
docker安装环境:要求系统为64位、Linux系统内核版本为 3.8以上,这里选用Centos7.x

cat /etc/redhat-release

在这里插入图片描述

uname -r

在这里插入图片描述

2.参考官网安装前准备

官网地址

(0)如果之前你的gcc相关软件已经安装或更新直接跳过此步骤。(我这里使用到额vm虚拟机安装的新centos系统)

yum -y install gcc
yum -y install gcc-c++

(1)安裝docker之前,如果你之前安装过docker,参考如下命令进行卸载(先停掉当前docker)
停止当前运行的docker

systemctl stop docker 

官网截图
在这里插入图片描述
在这里插入图片描述
官网命令

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

额外需要执行的命令
卸载之前安装的docker引擎等相关内容,这个和你安装时的内容有关,多加几个防止删不干净。

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

删除相关目录

rm -rf /var/lib/docker
rm -rf /var/lib/containerd

3.参考官网安装步骤开始安装docker

步骤一:

sudo yum install -y yum-utils

步骤二:
这里不推荐大家使用官网的镜像仓库地址,改用阿里云地址
在这里插入图片描述
使用阿里云地址命令如下

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

步骤三
更新yum软件包索引

yum makecache fast

步骤四
安装DOCKER CE

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

步骤五
启动docker

systemctl start docker

开机启动docker

systemctl enable docker

常用命令
1.停止docker

systemctl stop docker

2.重启docker:

systemctl restart docker

3.查看docker状态

systemctl status docker

如果控制台无任何打印信息,则表示docker基本无问题启动成功。

步骤六
验证docker是否安装成功

docker version

在这里插入图片描述
docker安装完毕!

4.运行首个容器

docker run hello-world

因为是新安装的docker,所以我们本地是没有hello-world这个镜像的,它会自动的去镜像仓库中下载并执行run操作。
我们也可以先下载镜像然后再执行run命令。
在这里插入图片描述

下载镜像(默认不知道版本号下载仓库中最新镜像)

docker pull hello-world

容器常用命令
1.列出当前所有正在运行的容器

docker ps

2.进入容器并返回一个伪终端

docker exec -it 容器id  /bin/bash

容器id如下
在这里插入图片描述
3.退出伪终端

exit

在这里插入图片描述
4.启动已停止运行的容器

docker start 容器ID或者容器名

5.重启容器

docker restart 容器ID或者容器名

6.停止容器

docker stop 容器ID或者容器名

7.强制停止容器

docker kill 容器ID或容器名

8.删除已停止的容器

docker rm 容器ID

一次性删除多个

docker rm -f 容器ID1  容器ID2

一次性删除所有已停止的

docker rm -f $(docker ps -a -q)

二、安装一些软件的踩坑

1.启动docker踩坑

执行命令systemctl start docker时报错,网上百度了好多方法,最后还是重新再安装一遍docker解决了。

2.安装mysql踩坑

在网上看了好久也收集一下,虽说网上的都没解决我的问题,但是还是有不错的案例。

mysql5和8都适用
①mysql用root用户连接不上之权限问题
如果你的mysql容器中,默认mysql库的user表中少了这么一条数据,那那么外部是无法连接到容器中的mysql。解决方式要么少了加一条数据,要么其他的情况改成%,再或者新建一个用户。
在这里插入图片描述
创建一个名为testuser的新用户并设置密码

CREATE USER 'testuser'@'%' IDENTIFIED BY 'password'; 

授予该用户在所有数据库上的全部权限

GRANT ALL PRIVILEGES ON *.* TO 'testuser'@'%';

更新权限生效

FLUSH PRIVILEGES;

②mysql8数据库使用sqlyog连接密码加密方式问题
更改加密方式即可,这个只在旧版的sqlyog上出现,新版IDE已解决该问题。
在这里插入图片描述
执行命令如下

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的root用户对应密码';

3.罕见问题

容器正常启动,能进入容器使用mysql(5.7或8我都尝试了)。外部系统就是无法连接mysql。
宿主机无法连接mysql,外部Windows系统也无法连接容器的mysql。
容器是启动的这一点不用怀疑,
也不是什么mysql密码输入错误等问题,
也不是端口号问题。
各种验证,Windows ping 宿主机(也就是vm的centos7)能通,
但是在Windows的cmd中 telnet 192.168.x.x 3306,不通。
然后又在宿主机中进行对3306的测试还是不通。
linux中的防火墙早就关闭了,这一点也不需要考虑。
经过两天的研究,期间重装了无数次虚拟机的系统,重装了无数次docker,最终解决方法为把虚拟机原来的4G内存调整为8G解决。
我人都裂了,为什么会这样,其实也有一定的前兆,就是我安装docker的时候,控制台无缘无故的重启,我以为是我网络卡顿(这块我进行过重试,就是重新执行一下某个步骤的按照命令,恰巧有一次命令最后执行成功了,所以我以为是网络问题),没网内存大小上想,好几次都这样我才意识到可能是虚拟机的配置太拉胯了,因为我本地Windows的配置是
16G内存+1T西数黑盘固态,给虚拟机分的50G固态也够用了。拉胯的可能是我的处理i7-7代,处理器我也没没有额外配置,就默认1核心。
最后我都上调了一下虚拟机的配置 8G内存,60G固态,2处理器,每个内核还是1。重新安装docker,运行一个mysql容器实例,Windows连接容器中的mysql,成功连接,无任何问题。
在这里插入图片描述

三、关于我的虚拟机

在往期教程中已经有详细的安装虚拟机的教程,如果想要我的linux的镜像文件,可以私信我,我看到的时候会分享给你。
vm安装虚拟机教程
对应博客截图
在这里插入图片描述

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

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

相关文章

鸿蒙开发(三)理解UIAbility

前文提到过,在使用DevEco创建鸿蒙项目的时候,会选择Empty Ability,那么这个Ability是什么呢?其实对比Android Studio创建Android羡慕时选择的Empty Activity,感觉Harmony的Ability更像是Android的Activity,…

持久双向通信网络协议-WebSocket-入门案例实现demo

1 介绍 WebSocket 是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接, 并进行双向数据传输。 HTTP协议和WebSocket协议对比: HTTP是短连接&#xff0…

利用人工智能和机器人技术实现复杂的自动化任务!

这篇mylangrobot项目由neka-nat创建,本文已获得作者Shirokuma授权进行编辑和转载。 https://twitter.com/neka_nat GitHub-mylangrobot :GitHub - neka-nat/mylangrobot: Language instructions to mycobot using GPT-4V 引言 本项目创建了一个使用GPT-4…

【K8S 云原生】Kurbernets集群的调度策略

目录 一、Kubernetes的list-watch机制 1、List-watch 2、创建pod的过程: 二、scheduler调度的过程和策略: 1、简介 2、预算策略:predicate 3、优先策略: 3.1、leastrequestedpriority: 3.2、balanceresourceal…

爬虫利器一览

前言 爬虫(英文:spider),可以理解为简单的机器人,如此一个“不为名利而活,只为数据而生,目标单纯,能量充沛,不怕日晒雨淋,不惧寒冬酷暑”的家伙,…

含PEMFC的热电联供系统能量管理策略Simulink仿真

1.光伏发电系统 在直流微电网中,光伏电池系统经过升压DC/DC变换器接入直流微电网提供功率。在不同的系统运行条件下,光伏电池系统有三种工作模式:MPPT 模式、下垂模式和空闲模式。由于光伏阵列的输出特性随着环境条件影响,光伏电池…

【科技素养题】少儿编程 蓝桥杯青少组科技素养题真题及解析第22套

少儿编程 蓝桥杯青少组科技素养题真题及解析第22套 1、植物的叶子多为绿色,这主要是因为它们含有 A、绿色色素 B、叶绿素 C、花青素 D、细胞 答案:B 考点分析:主要考查小朋友们生物知识的储备;叶绿素是植物叶子中的一种色素,它可以吸收太阳光中的能量并转化为植物所…

数据库多表查询练习题

二、多表查询 1. 创建 student 和 score 表 CREATE TABLE student ( id INT ( 10 ) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR ( 20 ) NOT NULL , sex VARCHAR ( 4 ) , birth YEAR , department VARCHAR ( 20 ) , address VARCHAR ( 50 ) ); 创建 s…

嵌入式软件工程师面试题——2025校招社招通用(十八)

说明: 面试群,群号: 228447240面试题来源于网络书籍,公司题目以及博主原创或修改(题目大部分来源于各种公司);文中很多题目,或许大家直接编译器写完,1分钟就出结果了。但…

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图的圆切图,Kotlin(4)

Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图的圆切图,Kotlin(4) 这篇 Android基于Matrix绘制PaintDrawable设置BitmapShader,以手指触点为中心显示原图像圆图,Kotlin&am…

电阻表示方法和电路应用

电阻 电阻的表示方法 直标法 直标法是将电阻器的类别及主要技术参数的数值直接标注在电阻器表面上 通常用3位阿拉伯数字来标注片状电阻的阻值,其中第1位数代表阻值的第1位有效数;第2位数代表阻值的第二位有效数字;第3位数代表阻值倍率&…

腾讯云服务器多少钱?2024年腾讯云服务器报价明细表

腾讯云服务器租用价格表:轻量应用服务器2核2G3M价格62元一年、2核2G4M价格118元一年,540元三年、2核4G5M带宽218元一年,2核4G5M带宽756元三年、轻量4核8G12M服务器446元一年、646元15个月,云服务器CVM S5实例2核2G配置280.8元一年…

小迪安全第二天

文章目录 一、Web应用,架构搭建二、web应用环境架构类三、web应用安全漏洞分类总结 一、Web应用,架构搭建 #网站搭建前置知识 域名,子域名,dns,http/https,证书等 二、web应用环境架构类 理解不同web应用组成角色功能架构 开发…

探索未来餐饮:构建创新连锁餐饮系统的技术之旅

随着数字化时代的发展,连锁餐饮系统的设计和开发不再仅仅关乎订单处理,更是一场充满技术创新的冒险。在本文中,我们将深入研究连锁餐饮系统的技术实现,带你探索未来餐饮业的数字化美食之旅。 1. 构建强大的后端服务 在设计连锁…

【网络取证篇】Windows终端无法使用ping命令解决方法

【网络取证篇】Windows终端无法使用ping命令解决方法 以Ping命令为例,最近遇到ping命令无法使用的情况,很多情况都是操作系统"环境变量"被改变或没有正确配置导致—【蘇小沐】 目录 1、实验环境(一)无法ping命令 &a…

中霖教育:2024年注册会计师报名缴费时间

注册会计师考试的报考人数逐年攀升,对于想要报考注会的考生来说,了解报名时间做好备考规划十分重要。 2024年注会报名时间已经确定 报名时间:4月8日8:00—4月30日20:00。 交费时间:6月13日—6月28日8:00-20:00。 温馨提示&…

stable diffusion使用相关

IP Adapter,我愿称之它为SD垫图 IP Adapter是腾讯lab发布的一个新的Stable Diffusion适配器,它的作用是将你输入的图像作为图像提示词,本质上就像MJ的垫图。 IP Adapter比reference的效果要好,而且会快很多,适配于各种…

gogs git创建仓库步骤

目录 引言创建仓库clone 仓库推送代码 引言 Gogs 是一款类似GitHub的开源文件/代码管理系统(基于Git),Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。 创建仓库 git中的组织可以把它看成是相关仓库的集合&#xff0c…

阳光抑郁症测试

大部分人对抑郁症的理解,就是每天无精打采,死气沉沉,可实际上,还有一种阳光抑郁症,完全不是这个样子。这种抑郁症的人,做事情非常有活力,魅力十足,给人感觉十分有自信,但…

网络基础学习(3):交换机

1.交换机结构 (1)网线接口和后面的电路部分加在一起称为一个端口,也就是说交换机的一个端口就相当于计算机上的一块网卡。 如果在计算机上安装多个网卡,并让网卡接收所有网络包,再安装具备交换机功能的软件&#xff0…