Docker--Docker Container(容器) 之容器实战

对docker容器的前两篇文章
Docker–Docker Container(容器) 之 操作实例
Docker–Docker Container(容器)

Mysql容器化安装

我们可以先在Docker Hub上查看对应的Mysql镜像,拉取对应的镜像:

拉取mysql5.7版本的镜像:

docker pull mysql:5.7

运行容器,并设置密码和端口映射:

docker run --name mysql -e MYSQL_R00T_PASSW0RD=123456 -p 8090:3306 -d mysql:5.7

使用以下命令查看容器是否在运行:

docker ps

进入容器的端口界面:

docker exec -it mysql bash

然后登录上Mysql:

bash-4.2# mysql -p

看一下数据库列表:
在这里插入图片描述

还可以通过workbench软件远程访问到mysql容器:
在这里插入图片描述
设置好映射端口和主机ip后,输入密码就能远程访问;
在这里插入图片描述

输入show databases 进行查看:
在这里插入图片描述

docker stop mysql
docker rm mysql

释放空间

注意事项:
端口映射:如果需要从主机访问MySQL服务,可以在创建容器时使用-p参数映射端口。
数据持久化:为了保证数据不丢失,可以使用-v参数挂载数据目录到主机。
安全性:不要在生产环境中使用默认的root密码和端口,以及不要将敏感信息暴露在环境中。

Redis容器化安装

在Docker Hub上搜索Redis镜像,可以使用以下命令:

docker search redis

拉取redis7.0版本的镜像:

docker pult redis:7.0

运行容器redis,并设置端口映射:

docker run --name redis -p 8089:6379 -d redis:7.0

进入redis容器运行界面,并运行redis :

root@VM-8-12-ubuntu:~# docker exec -it redis bash 
root@545e7a6a42ec:/data# redis-cli

设置一个key:
在这里插入图片描述
也可以通过软件Redis Desktop Manager 远程访问Redis容器:
在这里插入图片描述
释放空间:

docker stop redis
docker rm redis

注意事项:

  • 安全性:不要在生产环境中使用默认的密码和端口,以及不要将敏感信息暴露在环境中。可以通过修改redis.conf配置文件来设置密码和其他安全选项。
  • 资源限制:根据实际需求为Redis容器分配适当的CPU、内存和磁盘资源。可以使用Docker的–cpus、–memory和–storage-opt等参数来限制容器的资源使用。
  • 备份与恢复:定期备份Redis数据,并测试恢复过程以确保数据的安全性和可恢复性

C++容器简单制作

拉取一个ubuntu22.04的镜像:

docker pull ubuntu:22.04

运行ubuntu容器:

docker run --name mygcc -it ubuntu:22.04 bash

在ubuntu镜像中下载vim:

apt update
apt install gcc vim -y

然后编辑一个demo.c C文件

#include <stdio.h>
int main()
{
printf("hello docker!\n");
return 0;
}

编译代码并生成可执行程序

gcc -o demo demo.c

在这里插入图片描述
退出并删除mygcc容器 :

exit
docker rm mygcc

容器资源更新

运行容器mynginx,映射端口为8080 ,后台运行 :

docker run -d --name mynginx1 -p 8080:80 nginx:1.23.4

对于命令 docker top 加上 aux 就能查看cpu和内存资源:
在这里插入图片描述
也可通过指令docker stats 来实时查看不断追踪资源使用情况:

docker stats

在这里插入图片描述
通过资源更新将内存上限调为300m :

docker update -m 300m --memory-swap 600m mynginx1

查看资源使用情况可以看到内存上限变为300m :
在这里插入图片描述
进入mynginx1运行端口 :

docker exec -it mynginx1 bash

我们在容器中执行一个命令,打满 cpu:

for i in `seq 1 $(cat /proc/cpuinfo | grep "physical id" |wc -l)`; 
do     
dd if=/dev/zero of=/dev/null &  
done

#cat /proc/cpuinfo |grep “physical id” | wc -l 可以获得 CPU 的个数,我们将其表示为 N
#seq 1 N 用来生成1到N之间的数字 , 通过for循环 不断执行命令 1-N;
#for i in seq 1 N; 就是循环执行命令,从1到N
#dd if=/dev/zero of=/dev/null 执行 dd 命令, 输出到/dev/null, 实际上只占用 CPU, 没有 IO 操作
#由于连续执行N个(N是 CPU 个数)的 dd 命令, 且使用率为 100%, 这时调度器
会调度每个 dd 命令在不同的 CPU 上处理,最终就实现所有CPU占用率 100%

更新容器mynginx1 的cpu上限为10%:

docker update --cpu-period=100000 --cpu-quota=10000 mynginx1

在这里插入图片描述
停止运行的容器,并释放资源:

docker stop mynginx1
docker rm mynginx1

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

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

相关文章

【汇编语言】内中断(二) —— 安装自己的中断处理程序:你也能控制0号中断

文章目录 前言1. 编程处理0号中断1.1 效果演示1.2 分析所要编写的中断处理程序1.2.1 引发中断1.2.2 中断处理程序1.2.3 中断处理程序do0应该存放的位置1.2.4 中断向量表的修改1.2.5 总结 1.3 程序框架1.4 注意事项1.5 从CPU的角度看中断处理程序1.6 一些问题的思考与解答 2. 安…

VS2019中无法跳转定义_其中之一情况

我习惯了使用VS2019看stm的代码&#xff1b; 遇到的问题&#xff0c;在导入代码后&#xff0c;发现有些函数调用不能跳转到定义&#xff1b; 问题描述步骤 1、导入代码 2、跳转&#xff0c;无法跳转 1、中文路径 2、删除.vs文件 和网上查的都没办法解决 最后发现是VS不支持 …

让 Win10 上网本 Debug 模式 QUDPSocket 信号槽 收发不丢包的方法总结

在前两篇文章里&#xff0c;我们探讨了不少UDP丢包的解决方案。经过几年的摸索测试&#xff0c;其实方法非常简单, 无需修改代码。 1. Windows 下设置UDP缓存 这个方法可以一劳永逸解决UDP的收发丢包问题&#xff0c;只要添加注册表项目并重启即可。即使用Qt的信号与槽&#…

Elasticsearch:ES|QL 中的全文搜索 - 8.17

细心的开发者如果已经阅读我前两天发布的文章 “Elastic 8.17&#xff1a;Elasticsearch logsdb 索引模式、Elastic Rerank 等”&#xff0c;你就会发现在 8.17 的发布版中&#xff0c;有一个重要的功能发布。那就是 ES|QL 开始支持全文搜索了。在今天的文章中我们来尝试一下。…

SQL和Python 哪个更容易自学?

SQL和Python不是一个物种&#xff0c;Python肯定更难学习。如果你从事数据工作&#xff0c;我建议先学SQL、有余力再学Python。因为SQL不光容易学&#xff0c;而且前期的投入产出比更大。 SQL是数据查询语言&#xff0c;场景限于数据查询和数据库的管理&#xff0c;对大部分数据…

【unity】从零开始制作平台跳跃游戏--界面的认识,添加第一个角色!

在上一篇文章中&#xff0c;我们已经完成了unity的环境配置与安装⬇️ 【Unity】环境配置与安装-CSDN博客 接下来&#xff0c;让我们开始新建一个项目吧&#xff01; 新建项目 首先进入unityHub的项目页面&#xff0c;点击“新项目”&#xff1a; 我们这个系列将会以2D平台…

怎么禁用 vscode 中点击 go 包名时自动打开浏览器跳转到 pkg.go.dev

本文引用怎么禁用 vscode 中点击 go 包名时自动打开浏览器跳转到 pkg.go.dev 在 vscode 设置项中配置 gopls 的 ui.navigation.importShortcut 为 Definition 即可。 "gopls": {"ui.navigation.importShortcut": "Definition" }ui.navigation.i…

Unity3D实现抽象类的应用场景例子

系列文章目录 unity知识点 文章目录 系列文章目录👉前言👉一、示例👉二、使用步骤👉三、抽象类和接口的区别👉3-1、抽象类👉3-2、接口类👉壁纸分享👉总结👉前言 假设我们正在制作一个游戏,游戏中有多种不同类型的角色,这些角色都有一些共同的行为(比如移…

数据仓库工具箱—读书笔记01(数据仓库、商业智能及维度建模初步)

数据仓库、商业智能及维度建模初步 记录一下读《数据仓库工具箱》时的思考&#xff0c;摘录一些书中关于维度建模比较重要的思想与大家分享&#x1f923;&#x1f923;&#x1f923; 博主在这里先把这本书"变薄"~有时间的小伙伴可以亲自再读一读&#xff0c;感受一下…

docker启动一个helloworld(公司内网服务器)

这里写目录标题 容易遇到的问题&#xff1a;1、docker连接问题 我来介绍几种启动 Docker Hello World 的方法&#xff1a; 最简单的方式&#xff1a; docker run hello-world这会自动下载并运行官方的 hello-world 镜像。 使用 Nginx 作为 Hello World&#xff1a; docker…

基于IEEE 802.1Qci的时间敏感网络(TSN)主干架构安全分析及异常检测系统设计

中文标题&#xff1a;基于IEEE 802.1Qci的时间敏感网络&#xff08;TSN&#xff09;主干架构安全分析及异常检测系统设计 英文标题&#xff1a;Security Analysis of the TSN Backbone Architecture and Anomaly Detection System Design Based on IEEE 802.1Qci 作者信息&…

怎样提升企业网络的性能?

企业网络的稳定性和高效性直接影响员工的工作效率。以下从多维度分析了一些有效策略&#xff0c;帮助公司提升网络性能&#xff0c;营造更高效的办公环境。 1. 升级网络设备 采用性能更高的网络硬件是优化网络体验的重要基础。选择支持高吞吐量、低延迟的设备&#xff08;如企业…

力扣239.滑动窗口最大值

文章目录 一、前言二、单调队列 一、前言 力扣239.滑动窗口最大值 滑动窗口最大值&#xff0c;这道题给定一个数组&#xff0c;以及一个窗口的长度&#xff0c;这个窗口会往后滑动&#xff0c;直到数组最后一个元素。 要求每个滑动窗口的中的最大值。对于这道题&#xff0c;我…

mac 安装CosyVoice (cpu版本)

CosyVoice 介绍 CosyVoice 是阿里研发的一个tts大模型 官方项目地址&#xff1a;https://github.com/FunAudioLLM/CosyVoice.git 下载项目&#xff08;非官方&#xff09; git clone --recursive https://github.com/v3ucn/CosyVoice_for_MacOs.git 进入项目 cd CosyVoic…

Maven 安装配置(详细教程)

文章目录 一、Maven 简介二、下载 Maven三、配置 Maven3.1 配置环境变量3.2 Maven 配置3.3 IDEA 配置 四、结语 一、Maven 简介 Maven 是一个基于项目对象模型&#xff08;POM&#xff09;的项目管理和自动化构建工具。它主要服务于 Java 平台&#xff0c;但也支持其他编程语言…

Scala中的泛型特质

代码如下&#xff1a; package test41 //泛型特质 object test3 { //定义一个日志//泛型特质&#xff0c;X是泛型名称&#xff0c;可以更改。trait Logger[X] {val content: Xdef show():Unit }class FileLogger extends Logger[String] {override val content: String "…

ASP.NET |日常开发中读写XML详解

ASP.NET &#xff5c;日常开发中读写XML详解 前言一、XML 概述1.1 定义和结构1.2 应用场景 二、读取 XML 文件2.1 使用XmlDocument类&#xff08;DOM 方式&#xff09;2.2 使用XmlReader类&#xff08;流方式&#xff09; 三、写入 XML 文件3.1 使用XmlDocument类3.2 使用XmlWr…

分布式 Paxos算法 总结

前言 相关系列 《分布式 & 目录》《分布式 & Paxos算法 & 总结》《分布式 & Paxos算法 & 问题》 参考文献 《图解超难理解的 Paxos 算法&#xff08;含伪代码&#xff09;》《【超详细】分布式一致性协议 - Paxos》 Basic-Paxos 基础帕克索斯算法…

Git-基础操作命令

目录 Git基础操作命令 case *查看提交日志 log 版本回退 get add . Git基础操作命令 我们创建并且初始化这个仓库以后&#xff0c;我们就要在里面进行操作。 Git 对于文件的增删改查存在几个状态&#xff0c;这些修改状态会随着我们执行Git的命令而发生变化。 untracked、…

配置mysqld(读取选项内容,基本配置),数据目录(配置的必要性,目录下的内容,具体文件介绍,修改配置)

目录 配置mysqld 读取选项内容 介绍 启动脚本 基本配置 内容 端口号 数据目录的路径 配置的必要性 配置路径 mysql数据目录 具体文件 修改配置时 权限问题 配置mysqld 读取选项内容 介绍 会从[mysqld] / [server] 节点中读取选项内容 优先读取[server] 虽然服务…