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

网站建设寻求网站怎么做网络推广

网站建设寻求,网站怎么做网络推广,柳市网站,网站建设团队介绍文章目录 1. containerd安装2. 源码编译3. 验证编译的二进制文件是否含有调试需要的信息3.1. objdump工具验证3.2. file工具验证3.3. dlv工具验证 4. debug 1. containerd安装 [Ubuntu 22.04] 安装containerd 2. 源码编译 主要步骤如下#xff1a; 1、从github下载containe… 文章目录 1. containerd安装2. 源码编译3. 验证编译的二进制文件是否含有调试需要的信息3.1. objdump工具验证3.2. file工具验证3.3. dlv工具验证 4. debug 1. containerd安装 [Ubuntu 22.04] 安装containerd 2. 源码编译 主要步骤如下 1、从github下载containerd源码 git clone gitgithub.com:containerd/containerd.git 2、切换到想要debug的分支或者tag我这里选择切换到1.7.2版本的tag git branch v1.7.2 v1.7.2 git checkout v1.7.2 3、下载contaienrd的依赖 cd containerd go mod tidy 4、编译containerd源码 make build GODEBUGtrue all rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# make build GODEBUGtrue allbuildbin/ctr go build -gcflagsall-N -l -gcflags-trimpath/root/go/src -buildmodepie -o bin/ctr -ldflags -X github.com/containerd/containerd/version.Versionv1.7.2-2-gbe3ad13c1 -X github.com/containerd/containerd/version.Revisionbe3ad13c14e0e1da2840fc6496f2bcefefb99764 -X github.com/containerd/containerd/version.Packagegithub.com/containerd/containerd -tags urfave_cli_no_docs static_build ./cmd/ctrbin/containerd go build -gcflagsall-N -l -gcflags-trimpath/root/go/src -buildmodepie -o bin/containerd -ldflags -X github.com/containerd/containerd/version.Versionv1.7.2-2-gbe3ad13c1 -X github.com/containerd/containerd/version.Revisionbe3ad13c14e0e1da2840fc6496f2bcefefb99764 -X github.com/containerd/containerd/version.Packagegithub.com/containerd/containerd -tags urfave_cli_no_docs static_build ./cmd/containerdbin/containerd-stress go build -gcflagsall-N -l -gcflags-trimpath/root/go/src -buildmodepie -o bin/containerd-stress -ldflags -X github.com/containerd/containerd/version.Versionv1.7.2-2-gbe3ad13c1 -X github.com/containerd/containerd/version.Revisionbe3ad13c14e0e1da2840fc6496f2bcefefb99764 -X github.com/containerd/containerd/version.Packagegithub.com/containerd/containerd -tags urfave_cli_no_docs static_build ./cmd/containerd-stressbin/containerd-shimbin/containerd-shim-runc-v1bin/containerd-shim-runc-v2binaries rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# ls -lhtr bin/ total 158M -rwxr-xr-x 1 root root 31M Jul 29 14:34 ctr -rwxr-xr-x 1 root root 61M Jul 29 14:34 containerd -rwxr-xr-x 1 root root 29M Jul 29 14:34 containerd-stress -rwxr-xr-x 1 root root 9.4M Jul 29 14:34 containerd-shim -rwxr-xr-x 1 root root 12M Jul 29 14:34 containerd-shim-runc-v1 -rwxr-xr-x 1 root root 17M Jul 29 14:34 containerd-shim-runc-v2 rootcontainerd:~/workspace/containerd# 注意编译的时候containerd会依赖btrfs文件系统如果没有安装编译的时候会报错提示linux/btrfs_tree.h: No such file or directory。按照文档第一步安装containerd不会遇到这个问题。 3. 验证编译的二进制文件是否含有调试需要的信息 注意以下三种验证方式选择其中的一种验证成功即可。 3.1. objdump工具验证 正确的现象如下执行objdump --syms bin/containerd是可以看到调试信息的 rootcontainerd:~/workspace/containerd# objdump --syms bin/containerdbin/containerd: file format elf64-x86-64SYMBOL TABLE: 0000000000000000 l df *ABS* 0000000000000000 Scrt1.o 00000000000003b4 l O .note.ABI-tag 0000000000000020 __abi_tag 0000000000000000 l df *ABS* 0000000000000000 go.go 00000000003ad4c0 l F .text 0000000000000000 runtime.text 00000000003ad4c0 l F .text 0000000000000059 internal/cpu.Initialize 00000000003ad520 l F .text 0000000000000537 internal/cpu.processOptions 00000000003ada60 l F .text 0000000000000026 internal/cpu.indexByte 00000000003adaa0 l F .text 0000000000000925 internal/cpu.doinit 00000000003ae3e0 l F .text 0000000000000006 internal/cpu.isSet 00000000003ae400 l F .text 000000000000001b internal/cpu.cpuid.abi0 00000000003ae420 l F .text 0000000000000011 internal/cpu.xgetbv.abi0 00000000003ae440 l F .text 0000000000000009 internal/cpu.getGOAMD64level.abi0 00000000003ae460 l F .text 000000000000007a type:.eq.internal/cpu.option 00000000003ae4e0 l F .text 00000000000000e6 type:.eq.[6]internal/cpu.option 00000000003ae5e0 l F .text 0000000000000003 runtime/internal/atomic.(*Int32).Load 00000000003ae600 l F .text 0000000000000003 runtime/internal/atomic.(*Int32).Store 00000000003ae620 l F .text 000000000000000d runtime/internal/atomic.(*Int32).CompareAndSwap 00000000003ae640 l F .text 000000000000000a runtime/internal/atomic.(*Int32).Add 00000000003ae660 l F .text 0000000000000004 runtime/internal/atomic.(*Int64).Load 00000000003ae680 l F .text 0000000000000004 runtime/internal/atomic.(*Int64).Store 00000000003ae6a0 l F .text 000000000000000f runtime/internal/atomic.(*Int64).CompareAndSwap 00000000003ae6c0 l F .text 0000000000000007 runtime/internal/atomic.(*Int64).Swap 00000000003ae6e0 l F .text 000000000000000d runtime/internal/atomic.(*Int64).Add 00000000003ae700 l F .text 0000000000000003 runtime/internal/atomic.(*Uint8).Load 00000000003ae720 l F .text 0000000000000003 runtime/internal/atomic.(*Uint8).Store 00000000003ae740 l F .text 0000000000000004 runtime/internal/atomic.(*Uint8).And 00000000003ae760 l F .text 0000000000000004 runtime/internal/atomic.(*Uint8).Or 00000000003ae780 l F .text 0000000000000024 runtime/internal/atomic.(*Bool).Load 00000000003ae7c0 l F .text 000000000000001f runtime/internal/atomic.(*Bool).Store 00000000003ae7e0 l F .text 0000000000000003 runtime/internal/atomic.(*Uint32).Load 00000000003ae800 l F .text 0000000000000003 runtime/internal/atomic.(*Uint32).LoadAcquire 00000000003ae820 l F .text 0000000000000003 runtime/internal/atomic.(*Uint32).Store 00000000003ae840 l F .text 0000000000000003 runtime/internal/atomic.(*Uint32).StoreRelease 00000000003ae860 l F .text 000000000000000d runtime/internal/atomic.(*Uint32).CompareAndSwap 00000000003ae880 l F .text 000000000000000d runtime/internal/atomic.(*Uint32).CompareAndSwapRelease 00000000003ae8a0 l F .text 0000000000000005 runtime/internal/atomic.(*Uint32).Swap 00000000003ae8c0 l F .text 0000000000000004 runtime/internal/atomic.(*Uint32).And 00000000003ae8e0 l F .text 0000000000000004 runtime/internal/atomic.(*Uint32).Or错误的信息如下会提示no symbols这种二进制无法进行debug rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# objdump --syms /usr/local/bin/containerd/usr/local/bin/containerd: file format elf64-x86-64SYMBOL TABLE: no symbolsrootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# 3.2. file工具验证 正确信息如下会显示with debug_info, not stripped rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# file bin/containerd bin/containerd: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]9bb291e61e1eceb23359dc29100845e5c1edf763, for GNU/Linux 3.2.0, with debug_info, not stripped rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# 错误信息如下会显示stripped说明不包含调试信息无法进行debug rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# file /usr/local/bin/containerd /usr/local/bin/containerd: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, BuildID[sha1]322f89b7e351fe2ccfaa0fe30de79c76d49d6e26, for GNU/Linux 3.2.0, stripped rootcontainerd:~/workspace/containerd# 3.3. dlv工具验证 正确的调试信息如下 rootcontainerd:~/workspace/containerd# dlv exec bin/containerd Type help for list of commands. (dlv) (dlv) (dlv) (dlv) (dlv) (dlv) exit rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# 错误的调试信息如下会提示no debug info found rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# dlv exec /usr/local/bin/containerd Warning: no debug info found, some functionality will be missing such as stack traces and variable evaluation. Type help for list of commands. (dlv) (dlv) (dlv) (dlv) (dlv) exit4. debug debug containerd步骤如下 1、利用ps -ef|gerp containerd查看containerd启动所需要的参数这一步特别重要尤其是在debug k8s源码的时候k8s的每一个组件都带了很多命令行参数想要调试这些组件必须把这些组件的启动参数原封不动的加入到dlv调试命令当中 注意实际上执行上述命令之后会发现containerd并没有启动参数因此无需关心。 2、通过dlv命令启动containerd启动命令我们可以从IDEA remote debug功能拷贝过来 dlv --listen:12345 --headlesstrue --api-version2 --accept-multiclient exec bin/containerd注意这里在启动contaienrd的时候没有指定任何参数实际上也可以根据自己的情况加入containerd参数譬如指定containerd的配置文件的位置containerd默认配置文件为/etc/containerd/config.toml也可以指定调试的debug级别譬如 dlv --listen:12345 --headlesstrue --api-version2 --accept-multiclient exec bin/containerd -- --config/root/mycontainerd/config.toml --log-leveldebug 3、在IDEA启动debug连接到远程调试 注意在启动IDEA调试之前你需要在想要debug的位置增加断点否则程序启动会直接运行起来等你这个时候打断点很可能就晚了。注意在启动IDEA调试之前你需要修改IDEA操作系统标识为Linux 执行dlv --listen:12345 --headlesstrue --api-version2 --accept-multiclient exec bin/containerd -- --log-leveldebug命令之后此时会阻塞在这里千万不要使用ctrl c只有当IDEA连接上来的时候才会开始执行 rootcontainerd:~/workspace/containerd# rootcontainerd:~/workspace/containerd# dlv --listen:12345 --headlesstrue --api-version2 --accept-multiclient exec bin/containerd -- --log-leveldebug API server listening at: [::]:12345 2023-07-29T15:06:4508:00 warning layerrpc Listening for remote connections (connections are not authenticated nor encrypted)
http://www.dnsts.com.cn/news/33661.html

相关文章:

  • 免费的作文网站秦皇岛网站制作源码
  • 河南省建设注册中心网站橙色网站后台模板
  • 做网站高亮不良网站进入窗口免费正能量
  • 瑞安企业做网站新手如何做好网络营销推广
  • 4399自己做游戏网站网站内容策划书
  • 织梦网站专题模板下载网络推广方案例子
  • 网站建设作业网站建设 招聘需求
  • 网站使用网络图片做素材 侵权开发一个区块链app多少钱
  • 个人网站的设计嵌入式软件开发工具有哪些
  • 昆明云南微网站制作海口企业网站开发
  • 网站两边广告代码柳江企业网站开发公司
  • 网站开发公司前置审批网站制作周期
  • 九宫格网站模板做多肽的都有哪些网站
  • 企业网站策划qq企业邮箱怎么申请
  • 商标注册查询官方网站wordpress能不买服务器
  • 网站升级改版兰州seo优化
  • 精美的网站网站备案 失败
  • 网站搭建后如何使用研究生做家教什么网站
  • 单页面网站如何优化引流html5和html的区别
  • 做网站需要准备资料免费个人微网站模板
  • 顺义做网站公司微信公众号设计方案
  • 网站开发广告语做网站需要填什么
  • 中国建设网站官方网站企业建设网站 意义何在
  • 上海做网站最专业小公司
  • 公司的网站建设公司在线制作图片水印文字
  • 网站关键词可以添加吗东丽区 网站建设
  • 龙泉网站开发wordpress用什么开发的
  • 旅游网站设计风格青州建设局网站
  • 深圳网站建设大全asp网站500错误iis7
  • 网站自己的弄个盈利网站做什么