docker搭建C语言开发环境

Ubuntu Docker 容器使用与开发环境配置指南 -v $(pwd)/my_code:/app: 将当前目录下的 my_code 文件夹挂载到容器的 /app 目录。当你第一次进入一个基础的 Ubuntu 容器时,它是一个“最小化”系统,很多常用工具都没有。而不使用任何持久化存储(如 Docker Volume),那么当你删除容器后,其中的所有数据都会丢失。# 将宿主机当前目录下的 main.c 文件复制到容器的 /tmp 目录下。现在,我们开始在配置好的基础容器内,为各种语言安装编译和运行环境。即使你删除了容器,你的代码也安全地留在宿主机上。 阅读详情

docker搭建C语言开发环境

docker 基础命令

  • 查看镜像
docker images
  • 查看运行的容器
docker container ls
docker ps -a
  • 启动容器
docker run -d -it --name dev -p 8080:8080 --privileged=true /usr/sbin/init
  • 连接到容器
docker exec -it id bash
  • 停止容器
docker stop id
  • 删除容器
docker container rm id

制作基础镜像

无网络环境下使用本地文件作为基础镜像:

yum -y --install-root=./code-server install gcc gcc-c++ kernel-devel make cmake  libstdc++-devel libstdc++-static glibc-devel openssl-devel gperftools-libs psmisc openssh-server sudo epel-release vim git ctags net-tools tcpdump protobuf-c protobuf-c-devel protobuf doxygen  java-1.8.0-openjdk java-1.8.0-openjdk-devel bison flex readline readline-devel icu libicu-devel yacc libxml2-devel libxml2
cd code-sever
tar -cvpf code-server.tar --directory=. --exclude=proc --exclude=sys --exclude=dev --exclude=boot .
FROM centos:centos7.6.1810

MAINTAINER duanyingshou

RUN yum -y --nogpgcheck install gcc gcc-c++ kernel-devel make cmake  libstdc++-devel libstdc++-static glibc-devel glibc-headers \
&& yum -y --nogpgcheck install openssl-devel gperftools-libs \
&& yum -y --nogpgcheck install psmisc openssh-server sudo epel-release \
&& yum -y --nogpgcheck install vim git ctags net-tools tcpdump \
&& yum -y --nogpgcheck install protobuf-c protobuf-c-devel protobuf doxygen  java-1.8.0-openjdk java-1.8.0-openjdk-devel\
&& yum -y --nogpgcheck install bison flex readline readline-devel icu libicu-devel yacc libxml2-devel libxml2 \
&& mkdir /var/run/sshd \
&& echo "root:test" | chpasswd \
&& sed -ri 's/^#PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config \
&& sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config \
&& ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key \
&& ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key \
&& ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key \
&& ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key \
RUN curl  -fsSL https://code-server.dev/install.sh | sh
CMD export  PASSWORD="code" && code-server --host 0.0.0.0
CMD ["/usr/sbin/sshd", "-D"]

写入dockerfile后执行如下命令:

docker build -t dev:last .

安装coder-server

sudo docker pull codercom/code-server:latest
sudo docker run -d -it --name code-server -p 8080:8080 \
            -v "/home/ha/cwork:/home/coder/project" \
            -u "$(id -u):$(id -g)" \
            -e "DOCKER_USER=$USER" \
            codercom/code-server:latest

查看code-server镜像大小,可以看到code-server的镜像挺大的,1.63GB。

codercom/code-server        latest          dc6f07d1c0f8   20 months ago   1.63GB

查看code-server内部组件

sudo docker container ls
sudo docker exec -it 19f8152c703f bash

查看code-server内部的操作系统版本:

ha@19f8152c703f:~$ gcc -v
bash: gcc: command not found
ha@19f8152c703f:~$ uname -a
Linux 19f8152c703f 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 GNU/Linux
ha@19f8152c703f:~$ cat /etc/*release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

可以看到容器内部的操作系统是debian,我们期望是centos7.6,与我们的要求不符合,
因而采用在基础镜像里安装code-server,安装完成后,我们再将其导出为我们需要的镜像。

下载code-server

wget https://github.com/coder/code-server/releases/download/v4.16.1/code-server-4.16.1-amd64.rpm

下载完成后记录下code-server的rpm包的安装目录,并将其映射到容器内部进行安装。

或者也可以下载下来后直接打包进容器,dockerfile如下所示:

FROM centos:centos7.6.1810

MAINTAINER duanyingshou

RUN yum -y --nogpgcheck install gcc gcc-c++ kernel-devel make cmake  libstdc++-devel libstdc++-static glibc-devel glibc-headers \
&& yum -y --nogpgcheck install openssl-devel gperftools-libs \
&& yum -y --nogpgcheck install psmisc openssh-server sudo epel-release \
&& yum -y --nogpgcheck install vim git ctags net-tools tcpdump \
&& yum -y --nogpgcheck install protobuf-c protobuf-c-devel protobuf doxygen  java-1.8.0-openjdk java-1.8.0-openjdk-devel\
&& yum -y --nogpgcheck install bison flex readline readline-devel icu libicu-devel yacc libxml2-devel libxml2 \
&& mkdir /var/run/sshd \
&& echo "root:test" | chpasswd \
&& sed -ri 's/^#PermitRootLogin\s+.*/PermitRootLogin yes/' /etc/ssh/sshd_config \
&& sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config \
&& ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key \
&& ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key \
&& ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key \
&& ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
&& mkdir -p /home/code 
COPY code-server-4.16.1-amd64.rpm /home/code/
CMD export  PASSWORD="code" && code-server --host 0.0.0.0
CMD ["/usr/sbin/sshd", "-D"]

启动容器

sudo docker run -d -it --name dev_server -p 8080:8080 -p 10024:22 \
            -v "/home/ha/docker/dev:/home/coder/" \
            -u "$(id -u):$(id -g)" \
            -e "DOCKER_USER=$USER" \
            --privileged=true \
            dev:latest \
            /usr/sbin/init

查看容器日志

有时候容器可能会启动失败,这个时候就需要查看日志分析启动失败的原因。

docker logs id

基于当前容器构建镜像

容器运行起来后,发现code-server未成功安装运行。寻找原因发现code-server未正确安装,进入容器内部手动安装。

rpm -i /home/code/code-server-4.16.1-amd64.rpm
which code-server

能看到code-server命令说明安装成功。

同时发现sshd服务未在容器启动时启动,需要封装脚本,并在.bashrc中执行。

在容器内部编写如下脚本:

#!/bin/bash

/usr/sbin/sshd
export  PASSWORD="code"
/usr/bin/code-server --bind-addr=0.0.0.0:8080 >/dev/null 2>&1 &

将其保存为.start_service.sh,并增加可执行权限。

然后在.bashrc中添加如下内容,保证启动容器时启动。

# start up sshd and code-server
if [ -f /root/.start_service.sh ]; then
        ./root/.start_service.sh
fi

然后基于该容器生成最新镜像。

docker commit -a "duanyingshou" -m "add code-server" id dev:v2

到这里,我们的容器已经制作完成了,已经有了一个基本开发环境,可以将其导出然后到其他地方使用。

导出容器

  • 查看容器id
docker ps -a
  • 根据容器id导出容器
docker export ${id} > name.tar

导入容器

docker import - name < name.tar

导出镜像

  • 查看镜像id
docker images
  • 找到镜像id后,将镜像保存
docker save id > name.tar

载入镜像

docker load < name.tar

export 与save的区别

  • export导出的镜像文件体积小于save保存的镜像

  • docker import可以为镜像指定名称,docker load不能对载入的镜像重命名

  • export未包含镜像所有的历史记录和元数据信息,无法进行回滚

  • docker export 的应用场景:主要用来制作基础镜像,比如我们从一个 ubuntu 镜像启动一个容器,
    然后安装一些软件和进行一些设置后,使用 docker export 保存为一个基础镜像。然后,把这个镜像分发给其他人使用,比如作为基础的开发环境。

  • docker save 的应用场景:如果我们的应用是使用 docker-compose.yml 编排的多个镜像组合,
    但我们要部署的客户服务器并不能连外网。这时就可以使用 docker save 将用到的镜像打个包,然后拷贝到客户服务器上使用 docker load 载入。

docker web-ui 管理界面

有时候命令行管理起来不方便,此时需要一个web-ui来管理docker。使用如下命令进行下载porttainer:

docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
WSL搭建C语言开发环境全指南 在软件开发领域,开发环境配置是每个程序员必须掌握的基础技能。WSL(Windows Subsystem for Linux)作为微软推出的Linux兼容层,通过轻量级虚拟化技术实现了Windows与Linux系统的无缝集成。其核心原理是在Windows内核上构建Linux系统调用兼容层,既保留了Linux开发环境的原生特性,又避免了传统虚拟机资源占用过高的问题。对于C语言学习而言,WSL提供了完整的GCC工具链和Linux开发体验,特别适合计算机专业学生和准备转向Linux开发的程序员。通过配置VS Cod 阅读详情

相关推荐

WSL2开发环境配置与性能优化全攻略

虚拟化技术在现代开发环境中扮演着关键角色,它通过创建隔离的软件容器来提升资源利用率和系统兼容性。WSL2作为微软推出的第二代Linux子系统,采用轻量级虚拟化架构,在保持接近原生性能的同时,完美融合了Windows的易用性和Linux的开发效率。对于开发者而言,合理配置WSL2可以显著提升开发效率,特别是在嵌入式开发、数据科学等场景下,实测编译速度可提升30%以上。通过文件系统优化、GPU加速配置以及多语言环境搭建,WSL2能够满足从Python到C++等多种开发需求。结合VS Code远程开发和Docke

weixin_30904593的博客 379

docker搭建c++开发环境

4.编译安装llvm,太耗时,没有现成的只能现编译。2.根据Dockerfile创建docker镜像。注:使用宿主机网络,有时是为了使用本地的代理。注:使用宿主机网络,有时是为了使用本地的代理。1.Dockerfile 文件内容。

路漫漫其修远兮 1839

VSCode配置C语言开发环境避坑指南:从MinGW-W64安装到调试全流程

本文详细介绍了在VSCode中配置C语言开发环境的完整流程,重点解决MinGW-W64安装、环境变量配置和调试中的常见问题。通过避坑指南和实用技巧,帮助开发者高效搭建稳定的C语言开发环境,特别适合Windows平台下的C语言初学者和中级开发者。

weixin_30836759的博客 424

c语言使用libcurl库以及docker打包方案

       最近有一个棘手的问题,涉及到数据安全的考量,原先非常方便的使用python进行http服务的代码需要改成c语言来实现,我的方案是直接用c调用libcurl的库来实现,这里面遇到不少问题,后来出于不同的linux环境通用的原因又使用了docker来打包运行,下面就是详细内容。   libcurl:         本身这个库对c语言就有很好的支持,官网上就有现成的c语言的api使...

zx8167107的博客 1004

基于Docker+WSL+VSCODE的ESP32-C3开发环境搭建

前言 继红旭无线发布了乐鑫ESP32-C3开发环境的搭键的视频教程后,微信群中有个网友私下跟小编聊到:“其实还有更简单的环境搭建方式”,然后丢下这两行命令就走了: docker pull espressif/idf docker run -it espressif/idf 剩下一脸茫然的小编,一时半会不知所措;后来,抱着试一试且装逼的心态调查了一番,发现果然是个大杀器;众所周知,嵌入式这个圈子相较于互联网,在工具方面是绝对被碾压的,因为嵌入式开发者不断地在重复造轮子,效率极低!!!这也是为什么很多人喜欢

Wireless Farmer的博客 6165

【docker】第7篇 使用 Docker Engine API 进行开发(docker相关镜像操作)

Docker提供了Docker Engine API与Docker daemon交互,Docker提供了Go和Python版本的SDK。本质上Docker Engine API是一个RESTful的接口,可以通过HTTP请求操作。

Fanjufei的博客 741

01 TG7100C基础使用

TG7100c 基础使用

ren364940161的专栏 1350

java开发的前置知识:语言的划分、基础语法、Java开发本地环境搭建

文章目录前言I 基本前置知识1.1 基础概念1.2 基本专业术语1.3 项目组织结构1.4 序列化&反序列化1.5 java注释1.6 命名规范1.7 一个java文件需要包含的内容:1.8 java关键字II Java开发本地环境搭建:JDK、Maven环境配置 前言 基本术语、命名规范、相关开发工具:idea、datagrip(关注公众号:iOS逆向,获取破解文件) I 基本前置知识 1.1 基础概念 编程语言: 一组有规则的指令集合(指令可驱动计算机工作的指令) 指令: 0,1组合

专注于计算机研发知识和资讯分享 3293

docker容器化编译C/C++程序

将编译好的程序拷贝保存后,即可清理编译环境。docker容器可以针对不同的运行环境进行编译,但是并不能架构。比如x86_64的宿主机,是无法做aarch64架构下的编译的,当然如果能找到合适的交叉编译工具链,也可以做交叉编译,但此文中不在深入探究。

yjkhtddx的专栏 5736

使用Docker构建C语言开发环境的实践

摘要:本文介绍了使用Docker构建C语言开发环境的完整流程。通过编写简单的"Hello World"程序示例,详细说明了Dockerfile的配置方法,包括基础镜像选择、文件复制和编译命令设置。同时介绍了如何利用Docker Compose实现自动化构建和运行,以及注意事项如实时更新和输入处理问题。该方案能够有效隔离开发环境,简化依赖管理,适用于C语言及其他编译型语言的开发环境搭建。

2501_90323865的博客 49

NLP自然语言处理:神经网络语言模型(NNLM)

目录 一、传统语言模型 1.1 稀疏性 1.2泛化能力差 二、神经网络语言模型 2.1 前馈神经网络模型(FFLM) 2.2 循环神经网络模型(RNNLM) 2.2.1循环神经网络模型示例 2.2.2RNN语言模型训练过程 2.2.3RNN语言模型反向传播 2.2.4语言模型评估 语言模型的构建目的是为了对语言中的各要素的分布进行估计,具有较长的研究历史和广泛...

陈宸的博客 1万+

php7 yaf环境部署,GitHub - helei112g/docker-env: 使用Docker搭建的PHP7的开发环境,支持Phalcon、Yaf等C语言框架...

Docker搭建的PHP7开发环境。EnvPHP 7.2.6Redis 3.2.11MySql 5.7.22Nginx 1.14.0PHP ExtensionsPhalcon 直接可使用该镜像用于该框架的开发工作Yaf 直接可用于开发Yaf框架项目Redis 扩展igbinary 扩展,更高效的序列化函数xdebug 扩展,方便调试Install获取项目git clone git@github.c...

weixin_32254267的博客 258

034、特定场景优化(一):小目标检测的改进策略合集

本文针对工业场景中的小目标检测难题,提出了一套实战优化方案。首先从数据层面建议保持高分辨率输入(1024-1280像素)或采用切块训练策略,并适当放大标注区域。在网络结构上,提出减少下采样次数、增加高分辨率检测头、引入空间注意力机制等改进。损失函数方面推荐使用NWD匹配和QFL损失提升小目标敏感度。部署环节强调NMS优化、分辨率对齐和量化处理技巧。最后总结核心经验:优先优化数据质量而非模型结构,标注一致性比算法更重要,同时需为实际部署预留性能余量。硬件升级有时比算法调优更经济有效。

xiaoyaohou11的博客 652

Fluent Bit开发环境终极指南:VS Code + Docker容器化配置

Fluent Bit是一款**轻量级日志和指标处理器**,专门为云原生环境设计,能够在Linux、BSD、OSX和Windows等平台上高效运行。作为CNCF毕业项目,它已经成为现代可观测性栈中不可或缺的组件。 本文将为您详细介绍如何快速搭建Fluent Bit开发环境,结合VS Code和Docker容器化技术,让您能够轻松进行Fluent Bit插件开发和功能测试。 ## 🚀 Fluen

gitblog_00800的博客 1071

Xilinx Vitis HLS教程1--Vitis HLS概述[01/12]

Xilinx Vitis HLS教程[01/10]前言1. Vitis HLS简介1.1 软件工程师的设计原则1.1.1 简介1.1.2 吞吐量和性能1.2.3 架构问题1.2.4 FPGA编程的3大范式1.2.4.1 生产者-消费者范式1.2.4.2 流式数据范式1.2.4.3 流水线范式1.2.5 3种范式结合 前言 项目中使用到Xilinx Zynq UltraScale+ MPSoC ZCU102 开发板,领导指示研究"xilinx软件自带的c语言综合器"。对于一个硬件一窍不通的我来说,甚至不知道

B10030607的博客 5240

Wafer的T7 Code是什么,怎么来的

在半导体Cim系统中,waferstart 业务需要支持 Sorter 读取 Wafer 的 T7 Code,与 MES 的 Wafer ID 进行绑定,以便向 前追溯 Wafer 历史,那么问题来了,T7code 是什么Wafer的T7 Code是一种,用于标识双面抛光的晶圆。这种标记采用二维矩阵代码符号,适用于各种尺寸的晶圆,不仅限于450mm无缺口晶圆7。T7 Code是衬底来料背面通常会有的供应商刻的追溯ID,这是一串数字和字母组成的流水码。

阿拉伯梳子的专栏 7929

Win10开发环境搭建全攻略:从基础配置到高级工具

开发环境搭建是每个程序员必须掌握的基础技能,特别是在Windows平台上。通过系统级配置优化和现代化包管理工具(如WinGet)的应用,可以快速构建高效稳定的开发环境。本文详细介绍从系统基础设置到Python、Java等语言环境的完整配置流程,涵盖VS Code优化、Docker集成等实用技巧,帮助开发者实现一键式环境部署与备份。这些方法特别适合团队协作和多设备同步场景,能显著提升开发效率和工作一致性。

weixin_28829629的博客 257

游戏开发实战:5种AOI算法对比(九宫格 vs 灯塔 vs 十字链表)

本文深入对比了游戏开发中五种主流AOI算法(九宫格、灯塔、十字链表等)的性能与适用场景,帮助开发者根据项目规模选择最优解决方案。通过详细的技术分析和实战数据,揭示不同算法在万人同屏等极端场景下的表现差异,为MMORPG等大型多人在线游戏提供关键性能优化指南。

weixin_29268385的博客 476

告别手动配置!用Docker镜像5分钟搞定CAD Exchanger SDK开发环境(C++/C#/Java/Python)

本文详细介绍了如何利用Docker镜像快速部署CAD Exchanger SDK开发环境,支持C++、C#、Java和Python等多种语言。通过Docker化解决方案,开发者可以避免繁琐的手动配置,实现5分钟内完成环境搭建,显著提升开发效率。文章还提供了多语言开发实战技巧和团队协作最佳实践,帮助团队快速集成CAD文件解析功能。

426

高德地图爬虫

高德地图爬虫 工具:Pycharm,win10,Python3.6.4 1.需求分析 这篇爬虫和上一篇百度地图爬虫要求一样,百度地图爬虫我发现有一个auth参数会一直变化,一旦变化则获取的数据是不准确的,所以我上高德地图看了一下,高德地图没有这个反爬机制。但是高德地图大概爬取120个页面就会跳一次验证码,我这里是通过换IP解决这个问题的。 2.数据准备 同样我们需要全国地级市信息,用之前...

123的博客 1万+

Central Finance 全景解析:用 SAP S/4HANA 构建跨系统的财务中台与渐进式转型路径

Central Finance 是基于 SAP S/4HANA 的一种部署与应用场景:在不打断现有异构源系统运营的前提下,把多套 SAP 与非 SAP 系统中的财务与管理会计数据实时/准实时复制到一套中心化的 SAP S/4HANA 中,作为统一的记账与分析底座,逐步把选定的财务流程(如预算控制、付款、固定资产结账等)迁入中心系统。这让企业既能快速获得统一报表与统一核算结构,又为未来的整体迁移留出了弹性路径。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 393

主流开发语言与高效环境搭建实战:从选型到生产力提升

在软件开发领域,开发语言和开发环境是构建应用的两大基石。开发语言定义了程序的逻辑与结构,而开发环境则是将代码转化为可运行软件的工具链集合。其核心原理在于通过编译器、解释器、调试器和包管理器等工具,将开发者编写的高级语言代码高效、准确地转换为机器指令。掌握主流语言及其配套环境,对于提升开发效率、保障代码质量和促进团队协作具有重要价值。无论是进行企业级后端开发、快速构建前端应用,还是从事数据分析与人工智能项目,一个配置得当的开发环境都能让开发者专注于业务逻辑,而非陷入工具链的泥潭。例如,使用VSCode配置Py

weixin_30983353的博客 235

C# 与华中数控设备通信:数控机床自动化控制与实时监测系统

华中数控系统与C#通信开发指南 核心要点 通信基础 支持串口(RS232/RS485)和以太网两种连接方式 协议选择:通用Modbus协议或华中自定义HNC协议 关键数据映射表明确各参数对应的寄存器地址和功能码 系统架构 四层架构:设备层→通信层→业务层→应用层 包含实时数据采集、指令下发、状态监控、异常处理全流程 支持Modbus和HNC协议动态切换 代码实现 串口通信使用NModbus库简化开发 提供连接管理、数据读取、指令下发完整示例 包含异常处理和超时重连机制 应用价值 实现数控机床远程监控和自动化

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 2022

openEuler开发环境搭建:面向开发者的快速配置手册

前往项目官网免费下载:[https://ar.openeuler.org/ar/](https://ar.openeuler.org/ar/?utm_source=csdn_blog) 想要在openEuler操作系统上进行高效开发?这篇完整的快速配置手册将带你从零开始,一步步搭建专业级的开发环境!🚀 作为一款面向企业级应用的开源操作系统,openEuler为开发者提供了强大的工具链和完整的开

gitblog_06824的博客 273

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Neuropod开发环境搭建指南:从源码编译到测试全覆盖

欢迎来到Neuropod深度学习模型统一接口框架的完整开发环境搭建教程!🎯 无论您是AI研究人员、机器学习工程师还是深度学习开发者,本文都将为您提供从零开始构建Neuropod开发环境的完整指南。Neuropod是一个强大的深度学习模型统一接口库,能够让您在不同框架(如TensorFlow、PyTorch、TorchScript、Keras)之间无缝切换,简化模型的生产部署流程。 ## 📋

gitblog_01008的博客 851

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

C语言Docker基础镜像的搭建

在一个C语言项目中,根据项目要求需要Docker环境下运行,项目中涉及到了libevent、oralce、redis、kafka等组件,为了便于开发和后期的维护,搭建了包含以上组件的Docker基础镜像,以下供大家参考。

baoqqq123的博客 1627

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

上一篇: 数据库修化神篇二——使用flex和bison编写程序
下一篇: 数据库修仙元婴篇二——dcf写入机制
我在数据库世界里修仙
博客等级 码龄10年 2844粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我在数据库世界里修仙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值