docker file intro

Introduction设计:认知锚点与行为预设的实战方法论 Introduction不是文档开场白,而是用户与系统建立首次认知连接的关键接口。其核心原理在于利用人类视觉注意窗口(0.6–1.2秒)和F型阅读习惯,通过具象化场景、结果导向表达与动作强绑定,完成注意力接管与信任建立。技术价值体现在显著提升首屏停留时长、点击率与任务完成率——实测可使医疗设备识别速度提升40%、老年用户使用率从12%升至67%。广泛应用于产品引导页、技术文档首屏、开源项目README及工业SOP等多类工程场景。本文聚焦认知锚点、行为预设两大热词,提供可复用的结构模板与跨设备适配方案。 阅读详情

Docker 2 -- 关于Dockerfile

08 May 2014

Dockerfile是一个镜像的表示,可以通过Dockerfile来描述构建镜像的步骤,并自动构建一个容器

所有的 Dockerfile 命令格式都是:

INSTRUCTION arguments

虽然指令忽略大小写,但是建议使用大写。

FROM 命令

FROM <image>

或

FROM <image>:<tag>

这个设置基本的镜像,为后续的命令使用,所以应该作为Dockerfile的第一条指令。

比如:

FROM ubuntu

如果没有指定 tag ,则默认tag是latest,如果都没有则会报错。

RUN 命令

RUN命令会在上面FROM指定的镜像里执行任何命令,然后提交(commit)结果,提交的镜像会在后面继续用到。

两种格式:

RUN <command> (the command is run in a shell - `/bin/sh -c`)

或:

RUN ["executable", "param1", "param2" ... ]  (exec form)

RUN命令等价于:

docker run image command
docker commit container_id

注释

使用 # 作为注释

如:

# Memcached
#
# VERSION       1.0

# use the ubuntu base image provided by dotCloud
FROM ubuntu

# make sure the package repository is up to date
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
RUN apt-get update

# install memcached
RUN apt-get install -y memcached

MAINTAINER 命令

MAINTAINER <name>

MAINTAINER命令用来指定维护者的姓名和联系方式

如:

MAINTAINER Guillaume J. Charmes, guillaume@dotcloud.com

ENTRYPOINT 命令

有两种语法格式,一种就是上面的(shell方式):

ENTRYPOINT cmd param1 param2 ...

第二种是 exec 格式:

ENTRYPOINT ["cmd", "param1", "param2"...]

如:

ENTRYPOINT ["echo", "Whale you be my container"]

ENTRYPOINT 命令设置在容器启动时执行命令

root@tankywoo-docker:~# cat Dockerfile
FROM ubuntu
ENTRYPOINT echo "Welcome!"

root@tankywoo-docker:~# docker run 62fda5e450d5
Welcome!

USER 命令

比如指定 memcached 的运行用户,可以使用上面的 ENTRYPOINT 来实现:

ENTRYPOINT ["memcached", "-u", "daemon"]

更好的方式是:

ENTRYPOINT ["memcached"]
USER daemon

EXPOSE 命令

EXPOSE 命令可以设置一个端口在运行的镜像中暴露在外

EXPOSE <port> [<port>...]

比如memcached使用端口 11211,可以把这个端口暴露在外,这样容器外可以看到这个端口并与其通信。

EXPOSE 11211

一个完整的例子:

# Memcached
#
# VERSION       2.2

# use the ubuntu base image provided by dotCloud
FROM ubuntu

MAINTAINER Victor Coisne victor.coisne@dotcloud.com

# make sure the package repository is up to date
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
RUN apt-get update

# install memcached
RUN apt-get install -y memcached

# Launch memcached when launching the container
ENTRYPOINT ["memcached"]

# run memcached as the daemon user
USER daemon

# expose memcached port
EXPOSE 11211

上面是官方例子,国内建议换成163或sohu的源,不然太慢了。

root@tankywoo-docker:~# docker build -t tankywoo  - < dck                       [38/480]
Uploading context  2.56 kB
Uploading context
Step 0 : FROM ubuntu
 ---> 99ec81b80c55
Step 1 : MAINTAINER Victor Coisne victor.coisne@dotcloud.com
 ---> Using cache
 ---> 2b58110877f6
Step 2 : RUN echo "deb http://mirrors.163.com/ubuntu/ precise main restricted universe multiverse" > /etc/apt/sources.list
 ---> Running in f55a4a8bb069
 ---> d48c6a965398
Step 3 : RUN apt-get update
 ---> Running in da091a1dd6e7
Ign http://mirrors.163.com precise InRelease
Get:1 http://mirrors.163.com precise Release.gpg [198 B]

....

Processing triggers for libc-bin (2.19-0ubuntu6) ...
Processing triggers for ureadahead (0.100.0-16) ...
 ---> 2886671b5b86
Step 5 : ENTRYPOINT ["memcached"]
 ---> Running in e8aeeab92cb6
 ---> 7148293a4053
Step 6 : USER daemon
 ---> Running in 288766b19606
 ---> 235e7f630ffa
Step 7 : EXPOSE 11211
 ---> Running in c6f881b9d51f
 ---> 666c5d65f396
Successfully built 666c5d65f396
Removing intermediate container f55a4a8bb069
Removing intermediate container da091a1dd6e7
Removing intermediate container f23631d3d45a
Removing intermediate container e8aeeab92cb6
Removing intermediate container 288766b19606
Removing intermediate container c6f881b9d51f

ENV 命令

用于设置环境变量

ENV <key> <value>

设置了后,后续的RUN命令都可以使用

使用此dockerfile生成的image新建container,可以通过 docker inspect 看到这个环境变量:

root@tankywoo-docker:~# docker inspect 49bfc7a9817f
    ...
    "Env": [
        "name=tanky",
        "HOME=/",
        "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
    ],
    ...

里面的name=tanky就是设置的。

也可以通过在docker run时设置或修改环境变量:

docker run -i -t --env name="tanky" ubuntu:newtest /bin/bash

ADD 命令

从src复制文件到container的dest路径:

ADD <src> <dest>
  • <src> 是相对被构建的源目录的相对路径,可以是文件或目录的路径,也可以是一个远程的文件url
  • <dest> 是container中的绝对路径

VOLUME 命令

VOLUME ["<mountpoint>"]

如:

VOLUME ["/data"]

创建一个挂载点用于共享目录

具体参考 Docker 4 -- 总结

WORKDIR 命令

WORKDIR /path/to/workdir

配置RUN, CMD, ENTRYPOINT 命令设置当前工作路径

可以设置多次,如果是相对路径,则相对前一个 WORKDIR 命令

比如:

WORKDIR /a WORKDIR b WORKDIR c RUN pwd

其实是在 /a/b/c 下执行 pwd

CMD 命令

有三种格式:

  • CMD ["executable","param1","param2"] (like an exec, preferred form)
  • CMD ["param1","param2"] (as default parameters to ENTRYPOINT)
  • CMD command param1 param2 (as a shell)

一个Dockerfile里只能有一个CMD,如果有多个,只有最后一个生效。

The main purpose of a CMD is to provide defaults for an executing container. These defaults can include an executable, or they can omit the executable, in which case you must specify an ENTRYPOINT as well.

TODO 还没搞清楚这个的作用

ONBUILD

TODO

总结一下,基本常用的命令是: FROM, MAINTAINER, RUN, ENTRYPOINT, USER, PORT, ADD

一些例子

参考


Open Notebook本地部署指南:打造可控的NotebookLM平替 NotebookLM作为AI驱动的知识整理工具,因其数据出境、API封闭和访问受限等问题,难以满足科研、教育及企业合规场景需求。Open Notebook作为开源替代方案,基于Docker容器化架构与SurrealDB知识图谱底座,实现100%本地化部署、多模型灵活切换与细粒度权限控制。其核心价值在于将AI辅助思考从‘黑盒服务’转变为‘可审计、可扩展、可集成’的知识操作系统,支持PDF解析、向量检索、跨文档推理等关键能力,并天然适配私有化AI基础设施(如Ollama、Qwen2.5)。本文聚焦Open No 阅读详情

相关推荐

WebGoat靶场搭建与Web安全实战入门指南

Web应用安全是网络安全领域的核心议题,其基础在于理解常见漏洞的原理与利用方式。从概念上讲,Web安全漏洞如SQL注入、跨站脚本(XSS)等,均源于应用程序对用户输入处理不当。其技术原理涉及数据流验证、会话管理及权限控制等机制。掌握这些漏洞的利用与防御,对于构建安全的应用系统具有重要价值。在工程实践中,安全人员常使用靶场环境进行合法、可控的演练。其中,WebGoat作为OWASP维护的经典教学靶场,覆盖了从基础注入到复杂反序列化的多种漏洞场景,为学习者提供了结构化的实践平台。通过搭建本地WebGoat环境,

weixin_30345577的博客 385

dockerfile原理、创建及优化

一、基于Dockerfile创建二、Dockerfile操作指令三镜像层次 一、基于Dockerfile创建 Dockerfile是由一组指令组成的文件 ,用来写镜像的 Dockerfile结构四部分 ●基础镜像信息 ●维护者信息 ●镜像操作指令 ●容器启动时执行指令 (cmd/ENTRYPOINT) Dockerfile每行支持一条指令,每条指令可携带多个参数(支持&&),支持使用以“#“号开头的注释 (jason文件不支持#注释) 二、Dockerfile操作指令 指令 含义.

yan_0916的博客 2992

MobaXterm远程连接频繁掉线?3个SSH保活设置让你告别断连烦恼

本文针对MobaXterm远程连接频繁掉线问题,提供了3个SSH保活设置方案。从基础的SSH心跳机制到进阶的会话超时调整,再到TCP层保活与代理优化,全方位解决断连烦恼。特别适合需要稳定远程连接的开发者和运维人员,有效提升工作效率。

weixin_29250573的博客 486

Dockerfile(1) - FROM 指令详解

FROM 指明当前的镜像基于哪个镜像构建 dockerfile 必须以 FROM 开头,除了 ARG 命令可以在 FROM 前面 FROM [--platform=<platform>] <image> [AS <name>] FROM [--platform=<platform>] <image>[:<tag>] ...

qq_33801641的博客 4609

不到200块!手把手教你用ZYNQ7010和AD9363攒一台自己的开源SDR硬件(附BOM清单)

本文详细介绍了如何用不到200元的预算,基于ZYNQ7010 FPGA和AD9363射频芯片打造一台功能完备的开源SDR硬件平台。从核心组件选型、PCB设计到焊接调试,提供全流程实战指南,特别适合预算有限的硬件爱好者和创客群体探索无线通信世界。

weixin_26854829的博客 479

FastApi教程

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于万维网(WWW:World Wide Web )服务器与本地浏览器之间传输超文本的传送协议。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。

小石潭记丶 1561

Dockerfile 语法

Dockerfile 语法 Dockerfile语法由两部分构成,注释和命令+参数 1、FROM[:] [AS]: 设置基础镜像; FROM命令可能是最重要的Dockerfile命令。改命令定义了使用哪个基础镜像启动构建流程。基础镜像可以为任意镜 像。如果基础镜像没有被发现,Docker将试图从Docker image index来查找该镜像。FROM命令必须是Dockerfile的首个...

徒行沙漠 1006

44位abogus补环境与纯算逆向分析

44位ab参数补环境与纯算加密流程逆向分析

吴秋霖的博客 2767

Dockerfile FROM指令 语法解析

  凡是编写Dockerfile,几乎开始都会是FROM命令,它决定了Dockerfile构建出的镜像为何物,本文就来了解一下FROM的语法、语义以及对应的示例。   语法 FROM [--platform=<platform>] <image> [AS <name>] FROM [--platform=<platform>] <image>[:<tag>] [AS <name>] FROM [--platform=<

键盘上流淌的日子 4万+

UG NX二次开发(C++)-UIStyler-指定平面的对象和参数获取

在采用NXOpen C++进行二次开发时,采用Menu/UIStyler是一种很常见的方式,这样可以制作精美的界面,而且常用的块对象也集成了快速编程的代码,我们可以快速的利用这些块来定制我们需要的界面。但是,对于很多初学者可能对选择对象的获取不是很熟悉,我们本文以选择“指定平面”来讲一下如何获取选择的对象和对象的参数。另外,由于我们的UG NX二次开发学习讨论群QQ一群已满,有希望参与学习的有志之士加入我们的QQ二群:683566590。

GimiGimmy 1091

YOLOv11 模型剪枝实战:深入解析通道剪枝与层剪枝的策略与实现(含环境配置、微调技巧与部署测试)

YOLOv11模型剪枝技术通过移除冗余参数和结构来压缩模型,主要包括通道剪枝和层剪枝两种方法。通道剪枝通过评估批量归一化层的缩放因子γ确定通道重要性,移除不重要的特征通道;层剪枝则直接删除整个网络层或模块。剪枝流程包括评估重要性、移除冗余成分、微调模型和评估性能四个步骤。该技术可显著降低模型计算量和参数量,适合在资源受限设备上部署高性能目标检测模型。

本博客聚焦 YOLOv11 全流程落地,涵盖架构优化、数据集处理、训练技巧与多场景部署,兼及国产数据库、Java 开发与 AI 模型应用,内容兼顾理论与工程实践,为开发者提供系统干货,助力高效提升技术能力。 1960

【Docker】Dockerfile语法

构建自定义的镜像时,并不需要一个个文件去拷贝,打包。我们只需要告诉Docker,我们的镜像的组成,需要哪些BaseImage、需要拷贝什么文件、需要安装什么依赖、启动脚本是什么,将来Docker会帮助我们构建镜像。而描述上述信息的文件就是Dockerfile文件。Dockerfile就是一个文本文件,里面有很多指令(Instruction),这些指令就是来描述你这个镜像内部是如何构建的,它可以当做是镜像构建的说明书,将来docker会按照里面的指令去构建好我们的镜像,每一个指令都会形成一层Layer。

qq_39921135的博客 1141

dToF直方图之美_deadtime死区时间

IMX459的死区时间可以在6ns,这个时间是什么级别,车载激光雷达激光器的光脉宽一般都在4ns以上,也就是这个时间贴近去SPAD的死区时间,这就导致了pile up会非常弱,不会有太多数量的光子计数堆积,加上某些SPAD设计,对TDC有一些更深入的考量,所以不需要去校正pile up算法。Sensor层面决定了pile up的复杂程度,如果一个dToF的SPAD一致性非常好,那么pile up校正可以简单到极致,也就是一句代码的事,比如IMX611,优秀到不需要后端去考虑校正pile up。

dream it possible 1434

告别等待:5分钟为Jellyfin安装智能跳过片头插件

您是否厌倦了每次观看剧集时都要手动跳过冗长的片头?那些重复的片头动画不仅浪费时间,还打断了观影的沉浸感。现在,通过Intro Skipper这款智能插件,您可以让Jellyfin媒体服务器自动识别并跳过片头和片尾,让观影体验更加流畅高效。 ## 为什么您需要这个智能跳过工具? 在追剧过程中,我们常常面临三个痛点:**重复操作浪费时间**、**手动跳过不够精准**、**不同剧集片头长度不一**。

gitblog_00180的博客 457

4-20mA电流信号转电压

该电路实现4-20mA电流信号转电压(0.44-2.2V)调理功能,采用两级运放设计:第一级LMH6642MFX进行11倍放大,第二级配置为缓冲器加二阶低通滤波。电路包含10Ω采样电阻、多级RC滤波和ESD防护,具有抗干扰强、功耗低(4mW)等特点,适配3.3V系统ADC采集。通过使能控制MOS管可实现节能模式,适用于工业自动化、环境监测等场景。设计合理平衡了信号精度与功耗,输出电压范围留有充足余量避免饱和。

qq_37999850的博客 301

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

DVNA Docker部署指南:容器化环境下的安全最佳实践

DVNA(Damn Vulnerable NodeJS Application)是一个专门用于演示OWASP Top 10安全漏洞的NodeJS应用程序。本指南将详细介绍如何使用Docker容器化技术快速部署DVNA,并分享在容器化环境中的安全最佳实践。无论您是安全研究人员、开发人员还是测试工程师,这份完整的DVNA Docker部署指南都将帮助您建立一个安全的学习和测试环境。 ## 📦 为什

gitblog_00420的博客 302

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

3大核心技术打造:Jellyfin智能跳过片头片尾完全指南

你是否厌倦了每次追剧都要手动跳过冗长的片头?是否希望在连续观看多集剧集时能自动避开重复的片尾?Intro Skipper正是为Jellyfin媒体服务器用户量身定制的智能解决方案,通过先进的音频指纹识别和视频分析技术,为你带来无缝观影体验。这款开源插件能够自动检测并跳过视频中的片头和片尾序列,让你专注于核心内容,节省宝贵时间。 ## 🎯 为什么你需要智能跳过功能? 在当今快节奏的观影环境中,

gitblog_01000的博客 1080

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

OpenClaw原生本地部署实操手册:Windows/macOS零Docker落地指南

OpenClaw是一个开源智能体(Agent)运行时框架,核心能力是将自然语言指令自动编排为本地工具调用链,实现RAG与轻量级Agent的私有化闭环。其原理基于声明式技能定义、环境感知调度和进程级本地执行,技术价值在于完全规避云端依赖、保障数据主权、支持细粒度审计与调试。典型应用场景包括私有文档结构化解析、会议纪要待办提取、本地代码辅助生成等需深度集成Python/Shell/HTTP工具链的任务。本文聚焦‘原生部署’这一关键路径,系统解决Go环境冲突、SIP权限限制、PowerShell执行策略、跨平台路

433

5分钟快速上手Yuxi智能知识库平台:企业级AI助手部署指南

Yuxi(语析)是一款集智能知识库、知识图谱与多智能体编排于一体的企业级AI开发平台,支持多租户管理和RAG检索技术。无论你是技术新手还是企业开发者,都能在5分钟内完成部署,快速构建自己的智能问答系统。本指南将带你从零开始,掌握Yuxi智能知识库平台的一键安装、核心功能配置和最佳实践。 ## 🚀 项目亮点:为什么选择Yuxi? Yuxi智能知识库平台将**知识图谱管理**、**多智能体编排*

gitblog_00688的博客 1129

OVN安装指南:在Linux与FreeBSD系统上部署开源虚拟网络

Open Virtual Network(OVN)是一款功能强大的开源虚拟网络解决方案,能够帮助用户在Linux和FreeBSD系统上构建灵活、高效的网络环境。本指南将详细介绍OVN的安装步骤,包括从源码编译和通过系统包管理器安装两种方式,让你快速上手部署OVN虚拟网络。 ## 一、准备工作:了解OVN架构与环境要求 在开始安装OVN之前,先了解其基本架构有助于更好地理解后续部署步骤。OVN主

gitblog_00644的博客 946

LIO-SAM + Ouster 128线激光雷达实战配置指南:从点云爆量到稳定厘米级定位的完整路径

Ouster OS1-128 接上了,地图还是漂移、轨迹还是锯齿?这篇文章带你把 LIO-SAM(紧耦合激光-惯性里程计 SLAM)的关键参数逐个掰开,读完你能给 128 线雷达调出一套稳定、实时、低 CPU 占用的配置。 代码没拉取的话先 `git clone https://gitcode.com/GitHub_Trending/li/LIO-SAM` 再 `catkin_make`,本文所

gitblog_01168的博客 455

把教材预览页链接变成 PDF:tchMaterial-parser 免费上手指南

开学第一周,要把三本数学教材存到本地。tchMaterial-parser 是个免费的电子课本下载工具,把教材预览页链接贴进去,它就找到真正的 PDF 地址存到磁盘。 ## 装好并打开窗口 把仓库拉下来,装依赖,启动: ```bash git clone https://gitcode.com/GitHub_Trending/tc/tchMaterial-parser cd tchMater

gitblog_00204的博客 942

OpenHealth 使用教程:3 条命令把散落的健康数据交给 AI

化验单 PDF 存着,手环曲线在 App 里,体检报告躺在邮箱,家族病史只记在备忘录——想自己对照一下血脂走势,得手动翻半天。OpenHealth 就是为这种局面做的项目:它把分散的健康数据集中起来、结构化成统一格式,再让 AI 基于这些上下文直接和你对话。 ## 把你的数据变成专属 AI 健康助手 OpenHealth 是一个"长在你数据上"的 AI 健康助手,核心能力: - 集中管理血液

gitblog_00262的博客 381

Decktape深度解析:3种高效部署方案与实战指南

Decktape是一个基于Puppeteer的高质量HTML演示文稿PDF导出工具,专为开发者和技术团队设计。该项目通过自动化浏览器渲染技术,支持包括reveal.js、impress.js、remark等在内的14种主流HTML幻灯片框架,解决了技术演示文稿在不同平台和场景下的格式兼容性问题。本文将深入剖析Decktape的技术架构、部署方案和实战应用,帮助您充分发挥这一工具的价值。 ## 核

gitblog_00519的博客 831

Apache Airflow 入门指南:新手快速上手数据工作流编排的完整路径

凌晨两点,调度脚本挂了,你补数据补到早上十点。调度、重试、依赖、监控,这些活儿最后全压在你身上。Apache Airflow 就是为编排这类数据工作流而生的开源工具,而 airflow-guides 仓库是一份帮你从零学会它的指南合集,适合数据工程师、分析师,以及任何想把"每天手动跑一遍"变成自动化的人。 ## 一张表看懂 airflow-guides 是什么 | 项目 | 说明 | | --

gitblog_00866的博客 786

OpenGOAT靶场实战:从零搭建到SQL注入、XSS、文件上传漏洞深度解析

Web安全是网络安全的核心领域,其基础在于理解常见漏洞的原理与利用方式。SQL注入、跨站脚本(XSS)和文件上传漏洞是OWASP Top 10中的经典威胁,它们分别通过操纵数据库查询、注入恶意脚本以及上传恶意文件,实现对Web应用的攻击。掌握这些漏洞的原理,对于构建安全的应用和进行渗透测试至关重要。在安全学习与工程实践中,靶场环境提供了合法、可控的演练平台。通过部署开源靶场,学习者可以安全地实践从信息收集、漏洞扫描到利用的完整渗透测试流程,将理论知识转化为肌肉记忆。本文以OpenGOAT这一教学化设计的开源

weixin_33797791的博客 382
上一篇: Docker - Brief intro
下一篇: docker registry intro
screaming
博客等级 码龄19年 61粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值