当前位置: 首页 > news >正文

openEuler安装Docker艰辛路程

文章目录

      • 安装docker
      • 测试docker
      • 关于windows docker
      • 拉取镜像
      • 查看所有镜像
      • 删除镜像
        • 删除不在运行的进程
        • 强制删除正在运行的进程
      • 启动docker容器服务
        • `-d`测试
      • 停止docker容器服务
      • 查看docker启动进程
      • 更新容器(没有自启动功能,更新为自启动)
      • docker端口映射
      • 进入容器修改内容
        • 退出容器修改内容
      • docker mysql容器
        • 安装linux的mysql
        • 初始化mysql
        • 配置参数
        • 重新设置mysql登录密码
      • iBMC开启88端口的防火墙访问

安装docker

先试过这篇文章(不管用,你们可能会解决)

之后我就用了自带的dnf参考这篇

dnf install -y docker-ce

然后各种报错,**原因其实都是源的问题(本来想偷懒,结果越来越麻烦)**试了一下午就恼火了,开始直接改元

[docker-ce-stable] 中的baseurl改成了https://mirrors.huaweicloud.com/docker-ce/linux/centos/8.0/x86_64/stable/ (其实换成你想要的版本即可,但要注意系统需对牢)
但还是在这里插入图片描述
需要修改所有gpgkey,改成华为镜像https://mirrors.huaweicloud.com/docker-ce/linux/centos/gpg(记得加gpg)

再次dnf install -y docker-ce
安装成功

测试docker

docker pull hello-world:latest

报错:Cannot connect to the Docker
daemon at uix:///var/run/docker.sock.Is the docke
daemon running?

参考
说是这个错误通常发生在没有正确配置 Docker 或者权限不足的情况下

解决方法
查看/var/run/docker.dock 文件是否变成目录,如果是就删除该目录

ll /var/run/docker.sock

如果不是文件夹也没有文件(我是这个情况),直接systemctl restart docker就可以正常使用了
在这里插入图片描述
下载出现在这里插入图片描述
我们开始换源!

vim /etc/docker/daemon.json

在里面填写

{"registry-mirrors":["https://82m9ar63.mirror.aliyuncs.com"],"exec-opts":["native.cgroupdriver=systemd"],"log-driver": "json-fille","log-opts":{"max-size": "100m"},"storage-driver": "overlay2"
}

重启systemctl deamon-reload出现报错
在这里插入图片描述
你这里要确保/systemd-rc-local是否是能被执行的

ll /etc/rc.d/rc.local

在这里插入图片描述

# 设置为可执行
chmod +x /etc/rc.d/rc.local

这样再次去执行systemctl deamon-reload就可以成功

#重启docker
systemctl restart docker

在这里插入图片描述

systemctl status docker

在这里插入图片描述
注意ctrl+c键退出
先试着启动

systemctl start docker

还是报错,没办法只能

journalctl -xeu docker.service

在这里插入图片描述
查看docker进程

docker ps|grep elastic

在这里插入图片描述
启动docker

systemctl enable docker

也还是上述问题
手动启动

dockerd

在这里插入图片描述
使用docker images查看所有镜像

关于windows docker

下载地址需要下载WSL (其实是powershell管理员运行输入wsl --install)和powershell管理员运行配置: Enable-WindowsOptionalFeature -Online -FeatureName $("Microsoft-Hyper-V", "Containers") -All 这俩部后都要重启计算机(会更改配置)
配置windows的deamon.json文件

{"builder": {"gc": {"defaultKeepStorage": "20GB","enabled": true}},"experimental": false,"features": {"buildkit": true},"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

在这里插入图片描述

这样你的docker就可以在windows上正常使用了。其实还不完全但错误太多只能记录到这里,妄请大家见谅

拉取镜像

#下载最新版(docker pull mysql)
docker pull 镜像名
#下载指定版本(docker pull mysql:6.2.4 )
docker pull 镜像名:版本号

比如拉取mysql应用

docker pull mysql

下载下来的东西都在本地

查看所有镜像

docker images

在这里插入图片描述

我这里只下了hello-world的镜像

删除镜像

#docker rmi mysql(默认删除mysql:latest)
docker rmi 镜像名
#docker rmi mysql:6.2.4
docker rmi 镜像名:版本号
#docker rmi d2c94e258dcb
docker rmi IMAGE_ID
删除不在运行的进程
docker rm 自己使用--name取的名字
docker rm IMAGE_ID
强制删除正在运行的进程
docker rm -f IMAGE_ID

启动docker容器服务

#docker run 设置项 镜像名 镜像启动运行的命令(镜像里面默认有的,一般不会写)
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

常用的设置项[optrions]

  • --name:给应用起个名字,比如--name=chenmysql
  • -d: 后台运行
  • --restart:其中一个参数always这个参数表示这个容器服务下次服务器重启后会开机自启
  • -p: 表示port,意思就是端口
docker run mysql
-d测试
docker run --name=mynginx -d nginx

在这里插入图片描述

需要进行停止服务或删除服务,因为有应用在运行了

停止docker容器服务

docker stop IMAGE_ID

查看docker启动进程

docker ps

查看所有docker启动进程

docker ps -a

更新容器(没有自启动功能,更新为自启动)

docker update IMAGE_ID --restart=always

docker端口映射

docker run --name=mynginx -d --restart=always -p 88:80 nginx

进入容器修改内容

进入容器的命令台

#docker exec -it  IMAGE_ID /bin/sh
docker exec -it IMAGE_ID /bin/bash

在这里插入图片描述

这个nginx的html项目一般在/usr/share/nginx/html/
在这里插入图片描述

若执行docker exec -it mysql_image_id /bin/bash报错
在这里插入图片描述

docker start IMAGE_ID
退出容器修改内容

输入exit即可

docker mysql容器

设置 Docker 卷

docker volume create mysql-data

您可以通过发出以下命令列出 Docker 已知的所有卷

docker volume ls

在这里插入图片描述

docker run -d --name=mysql-server -p 3306:3306 -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=your_password mysql

如果出现docker ps -a中看到mysql是STATUS:‘ Exited (1) 2 minutes ago状态,那需要携带 --privileged

docker run --privileged -d --name=mysql-server -p 3306:3306 -v mysql-data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=your_password mysql
安装linux的mysql

下载的网页页面

wget https://dev.mysql.com/get/Downloads/MySQL-8.2/mysql-8.2.0-linux-glibc2.28-x86_64.tar.xz
tar -zxvf mysql-8.2.0-linux-glibc2.28-x86_64.tar.xz -C /usr/local/mysql

在这里插入图片描述

可以直接

xz -d mysgl-8.2.8-1inu×-g1ibc2.28-×86_64.tar.×z
tar -xvf mysgl-8.2.8-1inu×-g1ibc2.28-×86_64.tar -C /usr/local/
#更换为mysql文件名
mv mysgl-8.2.8-1inu×-g1ibc2.28-×86_64 mysql

进入mysql目录里

  1. 创建mysql组和用户
groupadd mysql
useradd -r -g mysql mysql
  1. 赋予权限
chown -R mysql.mysql /usr/local/mysql
初始化mysql

进入mysql的bin目录下

./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --initialize
配置参数
vim /etc/my.cnf
[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
#character config
character_set_server=utf8mb4
symbolic-links=0

懒得写了,反正我是参考这篇文章的

重新设置mysql登录密码
mysqladmin password yourpassword

在这里插入图片描述

ln -s /usr/local/mysql/bin/mysqladmin /usr/bin

在这里插入图片描述

mysqladmin -u root -p password yourpassword

在这里插入图片描述

上图是我输入密码的所以(passwoed:YES)不是密码正确,重点是connect to server at 'localhost' failed
/etc/my.cnf中添加一段skip-grant-tables
在这里插入图片描述

iBMC开启88端口的防火墙访问

最简单的方法就是systemctl stop firewalld但是这样不安全而且用不到这么多端口所以一般不会去做
启动防火墙systemctl start firewalld

开放一个端口

 firewall-cmd --add-port=88/tcp --permanent

在这里插入图片描述
重启

firewall-cmd --reload

在这里插入图片描述
这样对于本机的linux就可以了,虽然我们RH1288V3和电脑是在同一个网段下面但是对于防火墙的操作还是要在iBMC上的

还以为是这个(当然windows查看mac地址的方式的ipconfig /all)在这里插入图片描述结果不是。。。。

相关文章:

openEuler安装Docker艰辛路程

文章目录 安装docker测试docker关于windows docker拉取镜像查看所有镜像删除镜像删除不在运行的进程强制删除正在运行的进程 启动docker容器服务-d测试 停止docker容器服务查看docker启动进程更新容器(没有自启动功能,更新为自启动)docker端口映射进入容器修改内容退…...

python图像处理总结

等我有时间了,好好总结一下这几个图像处理包,为后面的研究做个铺垫 skimage包 可以用系统自带的图片,不用自己找图片 from skimage.io import imread, imshow from skimage import data image data.astronaut() imshow(image)后面可以拿这…...

腐烂的橘子 -- DFS、BFS

994. 腐烂的橘子 class OrangesRotting:"""994. 腐烂的橘子https://leetcode.cn/problems/rotting-oranges/description/"""def solution(self, grid: List[List[int]]) -> int:"""BFS时间复杂度 O(M*N)空间复杂度 O(M*N):par…...

java swing UI第三方设计器JFormDesiner和FlatLaf UI

安装JFormDesiner 官网:https://www.formdev.com/ 先去IDEA的插件市场安装吧 JFormDesiner是非开源,且付费的插件,可以自己去找找不付费的使用方法。在swing可视化设计UI非常高效快捷,初学者可能需要一定时间探索,熟…...

前端JS实现全屏和退出全屏的效果

全屏效果想必我们都很清楚把,平时追剧看电视剧什么都会使用全屏方便我们看,我们键盘的第一个键esc可以退出全屏,那么我们如何用js实现全屏的办法呢? 设置全屏 Document.requestFullscreen(),该方法用于异步请求使元素…...

蓝桥杯C组-填充-贪心

点击此处查看原题​​​​​​​ *思路:首先要求 00 11 尽可能的多,所以尽可能多的多配对,配对只在i , i 1之间发生,所以只需要关注str[i] 和 str[i 1]即可,如果str[i] str[i 1] ,那么一定配对&#x…...

mysql查询当天、近一周、近一个月及近一年的数据以及各种报表查询sql

以下是一些常见的MySQL查询语句,用于查询当天、近一周、近一个月和近一年的数据,以及一些常见的报表查询。 查询当天的数据: SELECT * FROM table_name WHERE DATE(date_column) CURDATE();查询近一周的数据: SELECT * FROM t…...

C# 使用Fleck创建WebSocket服务器

目录 写在前面 代码实现 服务端代码 客户端代码 调用示例 写在前面 Fleck 是 C# 实现的 WebSocket 服务器,通过 WebSocket API,浏览器和服务器只需要做一个握手的动作,然后浏览器和服务器之间就形成了一条快速通道;两者之间…...

Android中的SPI实现

Android中的SPI实现 SPI是JVM世界中的标准API,但在Android应用程序中并不常用。然而,它可以非常有用地实现插件架构。让我们探讨一下如何在Android中利用SPI。 问题 在Android中,不同的提供者为推送功能提供服务,而在大型项目中…...

什么是设计模式(第7章笔记)

目录 一、什么是设计模式 二、设计模式概要 1、名称 2、问题 3、解决方案 4、效果 三、《设计模式》的结构 四、小结 一、什么是设计模式 设计模式:是对已经分析过的问题,以及相关问题解决方案的优秀实践; 1、同样的问题总是重复出现&…...

【python入门】day27: 模拟高铁售票系统

界面 代码 #-*- coding:utf-8 -*- import prettytable as pt#---------导入漂亮表格 import os.path filename ticket.txt#更新座位状态 def update(row_num):#------更新购票状态with open(filename,w,encodingutf-8) as wfile:for i in range(row_num):lst1 [f{i1},有票,有…...

智能助手的巅峰对决:ChatGPT对阵文心一言

在人工智能的世界里,ChatGPT与文心一言都是备受瞩目的明星产品。它们凭借先进的技术和强大的性能,吸引了大量用户的关注。但究竟哪一个在智能回复、语言准确性、知识库丰富度等方面更胜一筹呢?下面就让我们一探究竟。 首先来谈谈智能回复能力…...

Android系统开发之浅谈广播接收器回调

广播接器BroadcastReceiver 广播Intent和广播接收器BroadcastReceiver,是大家android开发用的特别多的二个控件。 那如何从系统角度看待广播和广播接收器呢? 对于静态注册BroadcastReceiver和动态注册的BroadcastReceiver是如何回调其onReceive方法呢…...

PiflowX如何快速开发flink程序

PiflowX如何快速开发flink程序 参考资料 Flink最锋利的武器:Flink SQL入门和实战 | 附完整实现代码-腾讯云开发者社区-腾讯云 (tencent.com) Flink SQL 背景 Flink SQL 是 Flink 实时计算为简化计算模型,降低用户使用实时计算门槛而设计的一套符合标…...

Mysql运算符

文章目录 比较运算符< > !IS NULL \ IS NOT NULL \ ISNULLLEAST() \ GREATEST() 查询数据大小&#xff08;字典序&#xff09;BETWEEN...AND...IN (SET) \ NOT IN (SET)LIKE 模糊查询REGEXP \ RLIKE 逻辑运算符逻辑运算符&#xff1a; OR &#xff08;||&#xff09;、A…...

软件架构之事件驱动架构

一、定义 事件驱动的架构是围绕事件的发布、捕获、处理和存储&#xff08;或持久化&#xff09;而构建的集成模型。 某个应用或服务执行一项操作或经历另一个应用或服务可能想知道的更改时&#xff0c;就会发布一个事件&#xff08;也就是对该操作或更改的记录&#xff09;&am…...

C++ 后端面试 - 题目汇总

文章目录 &#x1f37a; 非技术问题&#x1f37b; 基本问题&#x1f942; 请自我介绍&#xff1f;&#x1f942; 你有什么问题需要问我的&#xff1f; &#x1f37b; 加班薪资&#x1f942; 你对加班有什么看法&#xff1f;&#x1f942; 你的薪资期望是多少&#xff1f;【待回…...

zds1104示波器使用指南

1、设置语言 2、功能检测验证示波器是否正常工作 3、示波器面板按钮详解 3.1、软键 3.2、运行控制与操作区 3.3、水平控制区 3.4、垂直控制区 3.5、多功能控制区 3.6、断电启动恢复&#xff0c;auto setup&#xff0c;default setup&#xff0c;恢复出厂设置详细解释 3.7、触…...

uni-app修改头像和个人信息

效果图 代码&#xff08;总&#xff09; <script setup lang"ts"> import { reqMember, reqMemberProfile } from /services/member/member import type { MemberResult, Gender } from /services/member/type import { onLoad } from dcloudio/uni-app impor…...

IDEA 中搭建 Spring Boot Maven 多模块项目 (父SpringBoot+子Maven)

第1步&#xff1a;新建一个SpringBoot 项目 作为 父工程 [Ref] 新建一个SpringBoot项目 删除无用的 .mvn 目录、 src 目录、 mvnw 及 mvnw.cmd 文件&#xff0c;最终只留 .gitignore 和 pom.xml 第2步&#xff1a;创建 子maven模块 第3步&#xff1a;整理 父 pom 文件 ① …...

手游刚开服就被攻击怎么办?如何防御DDoS?

开服初期是手游最脆弱的阶段&#xff0c;极易成为DDoS攻击的目标。一旦遭遇攻击&#xff0c;可能导致服务器瘫痪、玩家流失&#xff0c;甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案&#xff0c;帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

大话软工笔记—需求分析概述

需求分析&#xff0c;就是要对需求调研收集到的资料信息逐个地进行拆分、研究&#xff0c;从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要&#xff0c;后续设计的依据主要来自于需求分析的成果&#xff0c;包括: 项目的目的…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中&#xff0c;我们可能会遇到一些流式数据处理的场景&#xff0c;比如接收来自上游接口的 Server-Sent Events&#xff08;SSE&#xff09; 或 流式 JSON 内容&#xff0c;并将其原样中转给前端页面或客户端。这种情况下&#xff0c;传统的 RestTemplate 缓存机制会…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

高危文件识别的常用算法:原理、应用与企业场景

高危文件识别的常用算法&#xff1a;原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件&#xff0c;如包含恶意代码、敏感数据或欺诈内容的文档&#xff0c;在企业协同办公环境中&#xff08;如Teams、Google Workspace&#xff09;尤为重要。结合大模型技术&…...

SpringTask-03.入门案例

一.入门案例 启动类&#xff1a; package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

html-<abbr> 缩写或首字母缩略词

定义与作用 <abbr> 标签用于表示缩写或首字母缩略词&#xff0c;它可以帮助用户更好地理解缩写的含义&#xff0c;尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时&#xff0c;会显示一个提示框。 示例&#x…...