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

做投票链接的网站wordpress不用ftp下载文件

做投票链接的网站,wordpress不用ftp下载文件,阿里网站怎么建设,民宿平台搜索量上涨背景 需求#xff1a; 微服务的基础是镜像#xff0c;通常在最小化的Linux镜像中安装jdk#xff0c;然后运行编译好的java程序。将镜像运行到K8S上就得到了微服务Pod#xff0c;Pod通常使用安装K8S时配置的私有网段#xff0c;与宿主机不同。很多时候需要排查从Pod网段内…背景 需求 微服务的基础是镜像通常在最小化的Linux镜像中安装jdk然后运行编译好的java程序。将镜像运行到K8S上就得到了微服务PodPod通常使用安装K8S时配置的私有网段与宿主机不同。很多时候需要排查从Pod网段内访问K8S宿主机网段、其它外部Linux网段或域名接口等等需要在Pod容器内执行curl或telnet等常用命令。但普遍最常用的最小化的Linux容器镜像AlpineLinux中默认没有curl、telnet等工具需要手动安装。 解决 方式一推荐不能停机的Pod使用在个人电脑上创建可以上网的alpine Linux容器获取curl安装包传输到K8S容器内手动安装。方式二推荐可以停机、尚未上线的Pod使用重新准备新的基础镜像供开发使用制定标准后续使用的最小化镜像都必须默认安装curl/telent等工具。 解决 方式一容器不停机安装curl 简要步骤 本地获取curl安装包确认生产使用的alpine版本、拉取镜像运行容器、下载apk安装包。将curl安装包复制到K8S宿主机scp或lrzsz上传文件至K8S服务器。将curl安装包复制到目标Pod容器kubectl cp复制文件到具体容器。容器内安装apk登录容器安装curl。测试curl的使用。优点/缺点。 1.本地获取curl安装包 确认生产alpine版本为3.8 在K8S上通过k9s工具/K8S-dashboard/docker exec等命令登录目标容器执行命令cat /etc/os-release查看系统版本。 bash-4.4# hostname file-tg-cfd48df98-fnzbv bash-4.4# cat /etc/os-release NAMEAlpine Linux IDalpine VERSION_ID3.8.2 PRETTY_NAMEAlpine Linux v3.8 HOME_URLhttp://alpinelinux.org BUG_REPORT_URLhttp://bugs.alpinelinux.org bash-4.4# 在本人电脑或其它运行docker可以上网的服务器上搜索拉取镜像运行容器 PS C:\Users\Czm docker pull alpine:3.8 3.8: Pulling from library/alpine 486039affc0a: Pull complete Digest: sha256:2bb501e6173d9d006e56de5bce2720eb06396803300fe1687b58a7ff32bf4c14 Status: Downloaded newer image for alpine:3.8 docker.io/library/alpine:3.8PS C:\Users\Czm docker run -itd --name al38 alpine:3.8 /bin/sh 1e4353774d57297b44c10dafd4b30335015aae80bcee342dcf929bdf3f0bba92 PS C:\Users\Czm docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1e4353774d57 alpine:3.8 /bin/sh 3 seconds ago Up 2 seconds al38登录容器下载apk安装包 PS C:\Users\Czm docker exec -it al38 /bin/sh更换alpine apk源为国内源 # 清华大学源 sed -i s/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g /etc/apk/repositories # 阿里云源 sed -i s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g /etc/apk/repositories # 中科大源 sed -i s/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g /etc/apk/repositories创建存放apk的目录下载curl及其依赖 / # mkdir curl / # cd curl/ /curl # apk fetch curl -R -o /curl Downloading libssh2-1.9.0-r1 Downloading zlib-1.2.11-r1 Downloading musl-1.1.19-r11 Downloading libcurl-7.61.1-r3 Downloading busybox-1.28.4-r3 Downloading libressl2.7-libssl-2.7.5-r0 Downloading nghttp2-libs-1.39.2-r0 Downloading libressl2.7-libcrypto-2.7.5-r0 Downloading ca-certificates-20191127-r2 /curl # ls busybox-1.28.4-r3.apk curl-7.61.1-r3.apk libressl2.7-libcrypto-2.7.5-r0.apk libssh2-1.9.0-r1.apk nghttp2-libs-1.39.2-r0.apk ca-certificates-20191127-r2.apk libcurl-7.61.1-r3.apk libressl2.7-libssl-2.7.5-r0.apk musl-1.1.19-r11.apk zlib-1.2.11-r1.apk /curl # /curl # apk fetch busybox-extras -R -o /curl Downloading busybox-extras-1.28.4-r3打包所有apk文件为一个tar包方便传输 / # tar -zcvf czm-231110-Alpine3.8-curl.telnet.tgz /curl/2.将curl安装包复制到K8S宿主机scp或lrzsz上传文件至K8S服务器。 退出容器命令行返回Windows cmd执行docker cp命令复制tar包到Windows。 PS C:\Users\Czm docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1e4353774d57 alpine:3.8 /bin/sh 16 hours ago Up 16 hours al38 3127f7c3a2bd anapsix/alpine-java:8_server-jre_unlimited /bin/bash 7 weeks ago Up 17 hours tz PS C:\Users\Czm docker cp al38:/czm-231110-Alpine3.8-curl.telnet.tgz d:/czm-231110-Alpine3.8-curl.telnet.tgz Successfully copied 2.78MB to d:\czm-231110-Alpine3.8-curl.telnet.tgz PS C:\Users\Czm将tar包传输到K8S服务器 [sysmaprod-k8s-0001 ~]$ pwd /home/sysma [sysmaprod-k8s-0001 ~]$ ll |grep Alpine -rw-r--r-- 1 sysma sysma 2781771 Nov 10 10:07 czm-231110-Alpine3.8-curl.telnet.tgz3.将curl安装包复制到目标Pod容器kubectl cp复制文件到具体容器。 [sysmaprod-k8s-0001 ~]$ ll |grep Al -rwxr-xr-x 1 sysma sysma 365 Oct 31 09:28 07_getAllDeploy.sh -rw-r--r-- 1 sysma sysma 2781771 Nov 10 10:07 czm-231110-Alpine3.8-curl.telnet.tgz drwxr-xr-x 5 sysma sysma 326 Nov 3 09:30 czm_BathAlterDeployEnv [sysmaprod-k8s-0001 ~]$ kubectl cp czm-231110-Alpine3.8-curl.telnet.tgz file-tg-cfd48df98-fnzbv:/ -c file-tg -n media Error from server (NotFound): pods file-tg-cfd48df98-fnzbv not found [sysmaprod-k8s-0001 ~]$ kubectl cp czm-231110-Alpine3.8-curl.telnet.tgz file-tg-9b658c46-xkd48:/ -c file-tg -n media [sysmaprod-k8s-0001 ~]$ 4. 容器内安装apk登录容器安装curl。 使用K9S工具登录容器 选择不是sider-car的容器 刚才kubectl 复制的文件已经到了容器内部。 解压然后安装curl工具貌似apk无法自动解决依赖问题需要按如下顺序安装之前下载的apk安装包 实际操作如下 bash-4.4# ls busybox-1.28.4-r3.apk libcurl-7.61.1-r3.apk mii-tool-1.60_git20140218-r2.apk zlib-1.2.11-r1.apk busybox-extras-1.28.4-r3.apk libressl2.7-libcrypto-2.7.5-r0.apk musl-1.1.19-r11.apk ca-certificates-20191127-r2.apk libressl2.7-libssl-2.7.5-r0.apk net-tools-1.60_git20140218-r2.apk curl-7.61.1-r3.apk libssh2-1.9.0-r1.apk nghttp2-libs-1.39.2-r0.apk bash-4.4# apk add --no-network nghttp2-libs-1.39.2-r0.apk WARNING: Ignoring APKINDEX.adfa7ceb.tar.gz: No such file or directory WARNING: Ignoring APKINDEX.efaa1f73.tar.gz: No such file or directory (1/1) Installing nghttp2-libs (1.39.2-r0) Executing glibc-bin-2.29-r0.trigger OK: 24 MiB in 30 packages bash-4.4# apk add --no-network libssh2-1.9.0-r1.apk WARNING: Ignoring APKINDEX.adfa7ceb.tar.gz: No such file or directory WARNING: Ignoring APKINDEX.efaa1f73.tar.gz: No such file or directory (1/1) Installing libssh2 (1.9.0-r1) Executing glibc-bin-2.29-r0.trigger OK: 24 MiB in 31 packages bash-4.4# apk add --no-network libcurl-7.61.1-r3.apk WARNING: Ignoring APKINDEX.adfa7ceb.tar.gz: No such file or directory WARNING: Ignoring APKINDEX.efaa1f73.tar.gz: No such file or directory (1/1) Installing libcurl (7.61.1-r3) Executing glibc-bin-2.29-r0.trigger OK: 24 MiB in 32 packages bash-4.4# apk add --no-network curl-7.61.1-r3.apk WARNING: Ignoring APKINDEX.adfa7ceb.tar.gz: No such file or directory WARNING: Ignoring APKINDEX.efaa1f73.tar.gz: No such file or directory (1/1) Installing curl (7.61.1-r3) Executing busybox-1.28.4-r3.trigger OK: 24 MiB in 33 packages bash-4.4# 5. 测试curl的使用。 从容器内部发送任意curl请求成功。如图是post请求发送一个500MB文件到对端服务器 6. 优点/缺点。 优点pod不用重启业务不用中断。 缺点传输安装包复杂需要提前准备相同版本alpine系统镜像。容器重启后curl、telnet工具丢失还得重复再装一次。 方式二容器停机改为使用自定义基础镜像 就不详细写了需要详细过程的留言。 简要步骤 本地创建纯净alpine Linux容器登录alpine Linux容器安装自定义软件提交自定义容器为镜像使用docker commit命令提交基础镜像。联系开发更换底层基础镜像将自定义镜像推送至harbor仓库通知开发修改dockerfile将FROM 基础镜像修改为自定已经向。重新部署并登录容器测试登录容器后自带curl和其他命令。 优点一劳永逸一次安装之后多次更新微服务都能在基础镜像容器中使用curl命令。 缺点容器需要重新发布业务需要中断。 结束
http://www.yutouwan.com/news/273883/

相关文章:

  • 北京网站推广优化网站推广的10种方法
  • 福田网站建设运营费用刚做网站和搜出来的不一样
  • 分类信息网站营销苏州小程序开发设计公司
  • 童装东莞网站建设技术支持黄岛建设局网站
  • 网站建设 pdf企业产品微网站收费吗
  • 网站怎么做数据库个人免费开店的网站
  • 东营网站建设专业定制网站统计模板
  • 网站建设与制作教程下载上海网络营销外包服务公司
  • 石家庄网站建设模板浙江建设网站是多少
  • 珠海左右创意园网站开发网站开发案例代码
  • 泰安网站seo推广有人模仿qq音乐做的h5网站吗
  • 广告联盟做网站联盟文明网站建设有新突破
  • 应税服务网站开发开票连云港企业建站 网站
  • 辽宁网站备案要多久360建站工具
  • 高唐网站建设简洁物流网站模板
  • 建设一个网站的基本步骤域名更换网站
  • 通用网址通用网站查询网站设计介绍怎么写
  • 深圳营销型网站建设公司选择哪家好php是做网站美工的吗
  • 360免费建站模板俄罗斯做电商网站
  • 网站模版 源码网页制作与网站建设初学者必看教程
  • 西安做网站公司怎么样pc网站建设和推广
  • 品牌网站建设哪好设计师网页设计
  • 建设公司网站需要多少钱1sose wordpress
  • 山东省住房城乡建设厅网站那个网站做h5不要钱
  • 做网站怎么对接国际收款商户网站上如何做电子手册
  • 国外建筑设计网站推荐外贸人常用的网站
  • 专业网站搭建运营网站开发什么语言
  • asp.net网站开发简介开发小程序用什么软件写代码
  • 12306铁路网站开发语言合肥网页设计工资一般多少
  • 免费个人微网站模板网页前端是什么工作