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

Docker- chapter 1

note 1: docker 利用  volume 进行 presist data。 eg : 

compose.yaml:

volumes:database: //# named db by self

list golbal volumes:

docker volume ls # the volumes on the disk

inpect someone volume:

docker volume inspect multi-container-app_database
# the name of volume (multi-container-app_database)  constitude by the container name(multi-container-app) + the db name (database),and separatored by "_"

result : docker volume inspect  multi-container-app_database

[{"CreatedAt": "2024-02-05T10:20:28Z","Driver": "local","Labels": {"com.docker.compose.project": "multi-container-app","com.docker.compose.version": "2.24.3","com.docker.compose.volume": "database"},"Mountpoint": "/var/lib/docker/volumes/multi-container-app_database/_data","Name": "multi-container-app_database","Options": null,"Scope": "local"}
]

 but you can‘t fint the folder ( docker/volumes/multi-container-app_database/_data ) on your host,

and this the explain by gpt :

/var/lib/docker/volumes/multi-container-app_database/_data 这个路径是在 Docker 的虚拟文件系统中,而不是在你的宿主机的文件系统中。这是因为 Docker 使用了一种名为 UnionFS 的文件系统,它允许 Docker 创建层(layer),并将它们组合成一个单一的视图。

这意味着,即使你在宿主机的文件系统中看不到 /var/lib/docker/volumes/multi-container-app_database/_data 这个路径,你的数据仍然是安全的,它们被存储在 Docker 的虚拟文件系统中。

note 2 : 

  view current containers process status 

docker-compose ps 
# warning : the code run must at the folder  include a yaml/yml file

run a container  :

docker-compose up -d 
# -d mean detach 。that's meaning for the  process run at backend and the command line can continue input 
docker run -d -p 8080:80 --name my_container my_image
  • docker run 是创建并启动容器的命令。
  • -d 参数告诉 Docker 在后台运行容器。
  • -p 8080:80 参数将容器的 80 端口映射到宿主机的 8080 端口。
  • --name my_container 参数为容器指定一个名字 my_container
  • my_image 是你要创建容器的镜像的名字。

note 3 :

explaination  $:docker build -t getting-started . 

  • docker build:这是 Docker 的一个命令,用于从 Dockerfile 构建一个新的 Docker 镜像。
  • -t getting-started-t 参数用于给新构建的镜像指定一个名字(也叫做 tag)。在这个例子中,新构建的镜像的名字是 getting-started
  • .:这个点表示 Dockerfile 位于当前目录。Docker 会在这个目录下查找 Dockerfile,并根据 Dockerfile 的内容来构建镜像。

note 4:

current  running  list containers ( if include stop status  containers)

docker ps  【-a】

 note 5:

# syntax=docker/dockerfile:1FROM node:18-alpine  # Create a new build stage from a base image.
WORKDIR /app    
COPY . .
RUN yarn install --production
CMD ["node", "src/index.js"]
EXPOSE 3000

/app :  WORKDIR /app 这一行设置了后续指令的工作目录为 /app。这意味着后续的指令              (如 RUNCMDENTRYPOINTCOPY 和 ADD)如果指定的是相对路径,那么都会                       在 /app 目  录下执行

COPY :COPY . . 这一行就会将 Dockerfile 所在的目录(. 表示当前目录)下的所有文件                和  目录复制到 Docker 镜像的 /app 目录

CMD : CMD ["node", "src/index.js"] 这一行会在容器启动后在 /app 目录下运                   行 node src/index.js 命令

/app 是 Docker 容器内的一个目录,你可以把它看作是你的应用在 Docker 容器内的“家目录”

note 6:

$ docker run -dp 127.0.0.1:3000:3000 getting-started

The -d flag (short for --detach) runs the container in the background. This means that Docker starts your container and returns you to the terminal prompt. You can verify that a container is running by viewing it in Docker Dashboard under Containers, or by running     docker ps     in the terminal.

The -p flag (short for --publish) creates a port mapping between the host and the container. The -p flag takes a string value in the format of HOST:CONTAINER, where HOST is the address on the host, and CONTAINER is the port on the container. The command publishes the container's port 3000 to 127.0.0.1:3000 (localhost:3000) on the host. Without the port mapping, you wouldn't be able to access the application from the host.

相关文章:

Docker- chapter 1

note 1: docker 利用 volume 进行 presist data。 eg : compose.yaml: volumes:database: //# named db by self list golbal volumes: docker volume ls # the volumes on the disk inpect someone volume: docker volume inspect m…...

解决IntellIJ Idea内存不足

突然有一天我在IDEA打开两个项目时,发生了报错,说我内存不足,我这电脑内存16G怎么会内存不足。下面是我的解决方案。 IntelliJ IDEA 报告内存不足的原因通常与以下几个因素有关: 项目规模较大:如果您正在开发的项目非…...

【网络技术】【Kali Linux】Nmap嗅探(二)多设备扫描

上期实验博文:(一)简单扫描 一、实验环境 本次实验进行Nmap多设备扫描,实验使用 Kali Linux 虚拟机(扫描端)、Ubuntu 22.04虚拟机(被扫描端1)、Ubuntu 18.04虚拟机(被扫…...

简化版SpringMVC

简化版SpringMVC web.xml xml version"1.0" encoding"UTF-8"?> <web-app version"2.5" xmlns"http://java.sun.com/xml/ns/javaee" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation&quo…...

Java密码校验(正则表达式):密码由这四种元素组成(数字、大写字母、小写字母、特殊字符),且必须包含全部四种元素;密码长度大于等于8个字符。

1. 需求 对用户密码的强度进行校验&#xff0c;要求用户密码达到一定的强度&#xff0c;符合安全性要求。 1.1. 基础版需求 密码必须由字母和数字组成&#xff08;同时包括数字和数字&#xff09;&#xff1b;密码长度大于等于8个字符。 1.2. 进阶版需求 密码由这四种元素…...

【AMI】2400 环境安装步骤

2400 环境安装步骤 ----------Ubuntu14.4 MDS4.0 加载代码需要勾上Update Installing SPX related packages sudo apt install gcc-multilib mtd-utils:i386 subversion patch patchutils bison sudo apt install libc6-dev libxml-dom-perl zlib1g zlib1g-dev libcurl4-ope…...

AI:124-基于深度学习的人体遮挡物体重建技术

🚀点击这里跳转到本专栏,可查阅专栏顶置最新的指南宝典~ 🎉🎊🎉 你的技术旅程将在这里启航! 从基础到实践,深入学习。无论你是初学者还是经验丰富的老手,对于本专栏案例和项目实践都有参考学习意义。 ✨✨✨ 每一个案例都附带有在本地跑过的关键代码,详细讲解供…...

23种设计模式之单例模式

目录 什么是单例模式 单例模式的优点 创建单例模式的三大要点 单例模式的实现方式 饿汉模式 懒汉模式 使用场景 什么是单例模式 单例模式是一种创建型设计模式&#xff0c;它的核心思想是保证一个类只有一个实例&#xff0c;并提供一个全局访问点来访问这个实例。 什…...

leetCode 30天

题太难了&#xff0c;就来一个N皇后吧 51. N 皇后 class Solution { private:vector<vector<string>> res;void backtracking(int n, int row, vector<string>& chessboard){if (row n){res.push_back(chessboard);return;}for (int col 0; col<n;…...

vue3+vite+ts 配置commit强制码提交规范配置 commitlint

配置 git 提交时的 commit 信息&#xff0c;统一提交 git 提交规范 安装命令: npm install -g commitizen npm i cz-customizable npm i commitlint/config-conventional commitlint/cli -D 文件配置 根路径创建文件 commitlint.config.js module.exports {// 继承的规…...

PlateUML绘制UML图教程

UML&#xff08;Unified Modeling Language&#xff09;是一种通用的建模语言&#xff0c;广泛用于软件开发中对系统进行可视化建模。PlantUML是一款强大的工具&#xff0c;通过简单的文本描述&#xff0c;能够生成UML图&#xff0c;包括类图、时序图、用例图等。PlantUML是一款…...

自然语言处理(NLP)——使用Rasa创建聊天机器人

1 基本概念 1.1 自然语言处理的分类 IR-BOT&#xff1a;检索型问答系统 Task-bot&#xff1a;任务型对话系统 Chitchat-bot:闲聊系统 1.2 任务型对话Task-Bot:task-oriented bot 这张图展示了一个语音对话系统&#xff08;或聊天机器人&#xff09;的基本组成部分和它们之间的…...

使用虚拟主机部署多站点

网站目录权限的管理和虚拟主机的配置。 目录权限控制...

Openresty+Lua+Redis实现高性能缓存

一、背景 当我们的程序需要提供较高的并发访问时&#xff0c;往往需要在程序中引入缓存技术&#xff0c;通常都是使用Redis作为缓存&#xff0c;但是要再更进一步提升性能的话&#xff0c;就需要尽可能的减少请求的链路长度&#xff0c;比如可以将访问Redis缓存从Tomcat服务器…...

基于Vue2用keydown、keyup事件实现长按键盘任意键(或组合键)3秒触发自定义事件(以F1键为例)

核心代码 <template></template> <script> export default {created() {//监听长按快捷键addEventListener("keydown", this.keydown);addEventListener("keyup", this.keyup);},destroyed(d) {//移除长按快捷键removeEventListener(&…...

【C#】.net core 6.0 设置根目录下某个文件夹可访问,访问创建的图片等资源

欢迎来到《小5讲堂》 大家好&#xff0c;我是全栈小5。 这是《C#》系列文章&#xff0c;每篇文章将以博主理解的角度展开讲解&#xff0c; 特别是针对知识点的概念进行叙说&#xff0c;大部分文章将会对这些概念进行实际例子验证&#xff0c;以此达到加深对知识点的理解和掌握。…...

报错ValueError: Unknown CUDA arch (8.6) or GPU not supported

文章目录 问题描述解决方案参考文献 问题描述 报错 ValueError: Unknown CUDA arch (8.6) or GPU not supported 本人显卡为 RTX 3060&#xff0c;CUDA 为 10.2&#xff0c;PyTorch 为 1.5 解决方案 修改 C:\Users\Administrator\Envs\test\Lib\site-packages\torch\utils\c…...

Golang 并发 Cond条件变量

Golang 并发 Cond条件变量 背景 编写代码过程中&#xff0c; 通常有主协程和多个子协程进行协作的过程&#xff0c;比如通过 WaitGroup 可以实现当所有子协程完成之后&#xff0c; 主协程再继续执行。 如上的场景是主协程等待子协程达到某个状态再继续运行。 但是反过来怎么…...

linux 下 chrome 无法在设置里面配置代理的解决方法

文章目录 [toc]解决方法查找 chrome 命令路径查看 chrome 启动文件方式一方法二 在 linux 环境下&#xff0c;使用 chrome 没办法像 firefox 一样在设置里面配置代理&#xff0c;打开 chrome 的设置会有下面的内容显示 When running Google Chrome under a supported desktop e…...

C#上位机与三菱PLC的通信03--MC协议之A-1E报文解析

1、MC协议帧 MC协议可以在串口通信&#xff0c;也可以在以太网通信&#xff0c;有A-1E和Qna-3E两种模式&#xff0c;这两种都是三菱PLC通信协议中比较常用的两种&#xff0c;一般我们使用比较多的是以太网通信&#xff0c;对于FX5U系列/Q系列/Qna系列/L系列的PLC&#xff0c;…...

气象数据可视化必看:ERA5降水资料从m转mm的3种场景解决方案

气象数据可视化实战&#xff1a;ERA5降水资料单位换算与场景化应用指南 当你在深夜的实验室里盯着屏幕上那一串以"m"为单位的降水数据时&#xff0c;是否曾困惑过如何将它们转化为更符合学术惯例的"mm"&#xff1f;作为处理过数百个气象数据集的老手&#…...

Wan2.2-I2V-A14B性能调优:基于算法原理的模型推理加速策略

Wan2.2-I2V-A14B性能调优&#xff1a;基于算法原理的模型推理加速策略 1. 效果亮点预览 在RTX4090D显卡上&#xff0c;经过系统调优的Wan2.2-I2V-A14B模型展现出惊人的性能提升&#xff1a;单次推理耗时从原始的38ms降低至22ms&#xff0c;吞吐量提升近72%。更令人惊喜的是&a…...

Realistic Vision V5.1 虚拟摄影棚实战:利用GitHub管理自定义模型与脚本

Realistic Vision V5.1 虚拟摄影棚实战&#xff1a;利用GitHub管理自定义模型与脚本 你是不是也遇到过这样的烦恼&#xff1f;好不容易在本地电脑上&#xff0c;用Realistic Vision V5.1模型调出了一套完美的参数组合&#xff0c;生成的人像照片质感堪比专业影棚。结果换台电脑…...

从理论到实践:SUNFLOWER MATCH LAB中的Transformer架构详解

从理论到实践&#xff1a;SUNFLOWER MATCH LAB中的Transformer架构详解 如果你对AI图像识别&#xff0c;特别是植物识别感兴趣&#xff0c;可能听说过一些模型背后神秘的“Transformer”架构。它听起来很高深&#xff0c;像是只属于研究论文里的东西。但今天&#xff0c;咱们不…...

Llama-3.2V-11B-cot部署教程:bf16+auto device_map双卡4090显存优化详解

Llama-3.2V-11B-cot部署教程&#xff1a;bf16auto device_map双卡4090显存优化详解 1. 项目概述 Llama-3.2V-11B-cot是基于Meta Llama-3.2V-11B-cot多模态大模型开发的高性能视觉推理工具&#xff0c;专为双卡4090环境深度优化。本教程将详细介绍如何快速部署这一专业级解决方…...

【问题处理】如何解决PSQLException中2-byte值超出范围导致的整数溢出错误

1. 什么是PSQLException中的2-byte值溢出错误 最近在调试一个Java应用时&#xff0c;遇到了一个让人头疼的错误&#xff1a;Tried to send an out-of-range integer as a 2-byte value: 110629。这个错误看起来有点晦涩&#xff0c;但其实理解起来并不复杂。简单来说&#xff0…...

PyTorch 2.8镜像多场景落地:智慧农业病虫害识别模型田间部署方案

PyTorch 2.8镜像多场景落地&#xff1a;智慧农业病虫害识别模型田间部署方案 1. 田间AI的迫切需求 现代农业正面临病虫害防治的严峻挑战。传统人工巡查方式效率低下&#xff0c;一个熟练的技术员每天最多能检查3-5亩作物&#xff0c;而大型农场往往需要数十人同时作业。更棘手…...

SDMatte惊艳抠图效果展示:10组高难度玻璃/纱布/叶片实测对比图

SDMatte惊艳抠图效果展示&#xff1a;10组高难度玻璃/纱布/叶片实测对比图 1. 开篇&#xff1a;当AI遇见高难度抠图 在图像处理领域&#xff0c;抠图一直是个技术活。特别是遇到玻璃杯、薄纱窗帘、树叶这些半透明或边缘复杂的物体时&#xff0c;传统工具往往力不从心。今天我…...

Qwen2.5-72B-GPTQ-Int4保姆级教程:log排查技巧+Chainlit响应延迟优化

Qwen2.5-72B-GPTQ-Int4保姆级教程&#xff1a;log排查技巧Chainlit响应延迟优化 1. 模型简介与部署准备 Qwen2.5-72B-Instruct-GPTQ-Int4是通义千问大模型系列的最新版本&#xff0c;在知识量、编程能力和数学能力方面有显著提升。这个72.7B参数的模型经过GPTQ 4-bit量化&…...

Blazor组件测试工具:BootstrapBlazor测试库完整指南

Blazor组件测试工具&#xff1a;BootstrapBlazor测试库完整指南 【免费下载链接】BootstrapBlazor 项目地址: https://gitcode.com/gh_mirrors/bo/BootstrapBlazor BootstrapBlazor测试库是企业级Blazor UI组件库的质量保障体系&#xff0c;提供了一套完整的组件测试解…...