培训第三十四天(初步了解Docker与套接字的应用)

2024-08-22 22:04

本文主要是介绍培训第三十四天(初步了解Docker与套接字的应用),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

上午

回顾

1、主从复制(高可用)
2、传统的主从复制
3、gtids事务型的主从复制
4、注意

1)server_id唯一

2)8.X版本需要get_ssl_pub_key

3)5.X不需要

4)change master to

5)stop | start slave

5、非交互
 import pymysqlconn=pymysql.connect(host=xxx,user=xxx,password=xxx,port=xx,database=xxxx)cursor=conn.cursor()sql="insert | delete | update | select..."cursor.execute(sql)#查询不需要提交,直接使用fectch就可以得到结果#增删改需要提交conn.commit()mysql -h10.0.0.21 << EOFcreate datase if not exists test charset utf8mb4;use test;create tables...quitEOF
6、数据库的负载均衡 阿里巴巴的mycat
 vim /usr/local/mycat/conf/server.xml对外的账户  密码   数据库<user name="li"><property name="password">li</property><property name="database">test>/property></user>vim /usr/local/mycat/conf/schema.xml<mycat:schema><schema name="test" dataNode="abc"></schema><dataNode name="abc" dataHost="efg" database="test"/><dataHost name="efg"  ......><writeHost host="hs01" url="10.0.0.11:3306" user="li" password="li"><readHost host="hs02" url="10.0.0.12:3310" user="li" password="li"/><readHost host="hs02" url="10.0.0.13:3310" user="li" password="li"/></writeHost></dataHost></mycat:schmel>
7、如果出现启动异常,8066端口没有打开,可以检查两个日志文件

vim /usr/local/mycat/logs/wrapper.log

vim /usr/local/mycat/logs/mycat.log

8、后端服务器 java | python | php | asp

版本:正常市场jdk8,但是由于spring6.X框架必须要求17以上的版本,jdk版本比较多,找开发者要版本-jdk

 vim /etc/profileexport JAVA_HOME=/usr/local/jdkexport PATH=$PATH:$JAVA_HOME/binsouce /etc/profile

使用jar包启动服务

 #配置application.properties | yml#修改yml中的端口或者数据源url=jdbc:msyql://ip:port/databasenameusername=dbuserpassword=dbpassjava -jar eleme.xxxx.jar
9、负载均衡技术lvs
 dr模式1、挂载vip(对外) ens33:0ifconfig ens33:0 vipXXXX broadcast=vipxxxx netmast=255.255.255.255 uproute add vipxxxx dev ens33:0yum -y install ipvsadm#添加规则ipvsadm -A -t vipxxxx:port -s rripvsadm -a -t vipxxxx:port -r ripxxxx -gipvsadm -a -t vipxxxx:port .....rs主机ifconfig lo:0 vipxxxx broadcast=vipxxxx netmast=255.255.255.255 uproute add vipxxxx dev lo:0抑制接受请求echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/lo/arp_announceecho 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announce
10、nginx配置代理 负载均衡
 http {upstream javagroup{server ip:port weight=99;server ip:port weight=1;}server {location ~/ {pass_proxy http://javagroup:}}}

下午

⼀、了解Docker

1、Docker 是什么?

Docker 是⼀个开源的应⽤容器引擎,可以实现虚拟化,完全采⽤“沙 盒”机制,容器之间不会存在任何接⼝。

Docker 通过 Linux Container(容器)技术将任意类型的应⽤进⾏包 装,变成⼀种轻量级、标准化、可移植、⾃管理的组件。在包装应⽤的同时,可连带该应⽤的依赖和环境⼀并进⾏打包,所以可以将这种“包”移植到任意环境去运⾏,省去兼容性的问题。

2、Docker 和虚拟机的区别

Docker和虚拟机在以下⼋个⽅⾯存在差异:

1、启动速度:Docker 启动速度⾮常快,属于秒级别,⽽虚拟机通常需要⼏分钟去启动。

2、资源消耗:Docker 需要的资源更少,它直接运⾏在宿主机的内核上,以⼀系列进程的结合形式存在。⽽虚拟机则需要消耗更多的资源,因为它在操作系统级别进⾏虚拟化。

3、轻量级:Docker 更轻量,它的架构可以共⽤⼀个内核与共享应⽤程序库,所占内存极⼩。⽽虚拟机则相对较重,需要消耗更多的内存。

4、隔离性:虚拟机可以实现系统级别的隔离,⽽ Docker 则属于进程之间的隔离,隔离性相对较弱。

5、安全性:Docker 的安全性也更弱。

6、可管理性:Docker 的集中化管理⼯具还不算成熟。

7、兼容性:开发⼈员不需要关系具体是哪个 Linux 操作系统,基本市⾯上主流系统都可使⽤ Docker。

8、数据持久性:Docker ⽆法存储数据,当容器重启后,数据会消 失;⽽虚拟机可以存储各种数据,包括⽇志、数据库等。

3、Docker 解决的问题

(1)系统环境不⼀致问题 环境不同时可能会出现的环境问题:

使⽤ docker 容器时:

将简易的操作系统、编写好的代码、部署完成的应⽤服务配置等打包放到容器内,再转到鲸⻥上,由鲸⻥送到服务器,此时,⽆论是什么运⾏环境,docker 容器都可以运⾏。

(2)应⽤隔离问题

Linux 是⼀个⽀持多⽤户的操作系统,正因如此,可能会造成⽤户使 ⽤时,互相之间占⽤资源过多,以致于服务器资源空间不⾜,⽽ docker 具有隔离性,可以在启动时就限定好硬件的使⽤率,当某个容器到达或超过限定的阈值时,就会被 kill,此时需要运维⼈员对其 进⾏调试。

4、Docker 的优缺点

(1)优点

1、 体积⼩:减⼩系统的开销值,⼀台主机可以运⾏上千个容器。

2、启动迅捷:更快速的交付和部署,docker容器 ,⽐传统虚拟机要快很多,docker核⼼解决的问题就是利⽤容器实现VM类似的功能。

3、操作⽅便:通过配置 dockerfile 便⽀持灵活的⾃动化创建和部署。

4、更轻松的扩展:可以实现更简单的、更可靠的迁移,避免了兼容 性等问题。

5、更强的可扩展性和可移植性。

(2)缺点

1、安全问题:如果没有正确配置,⼀个容器中的恶意代码可能会影响到主机上的其他容器以及主机本身的安全。

2、存储问题:当使⽤⼤量容器时,存储和管理容器映像可以变得⾮常困难。这可能需要使⽤分布式存储或其他解决⽅案来管理⼤量容器的存储。

3、性能问题:在某些情况下,容器和虚拟机相⽐会导致性能损失。 这些性能问题越来越少,但是仍然需要考虑。

4、 ⽹络问题:Docker 可能会在⽹络配置上存在⼀些问题,这可能需要更多的时间来诊断和解决。

5、 复杂性:Docker 是⼀个⾮常灵活的系统,但这同时也让它更加复杂。⻓时间使⽤ Docker 会产⽣⼤量的脚本和配置⽂件,这些可能变得难以维护。

6、资源消耗:使⽤ Docker 必须占⽤⼀些资源,包括 CPU、内存、磁盘等等。如果运⾏容器的主机资源不⾜,可能会导致性能 问题。

7、学习曲线:Docker 是⼀个相对新的技术,相⽐传统环境需要⼀ 定的学习曲线。需要了解Docker 基本概念、命令和配置⽂件等。

8、需要花费时间配置和管理:使⽤ Docker 需要花时间配置和管理容器集群和应⽤程序。需要配置每个容器,管理 Jenkins、 Kubernetes 等运⾏ Docker 容器的⼯具。

9、映像构建复杂:构建Docker映像需要按照特定格式编写 Dockerfile 脚本,需要遵循⼀定的规范和流程,这可能需要更多的时间和精⼒。

5、Docker 架构

1、⽤ docker pull 命令从 hub.docker.com 官⽹上下载 images (镜 像)。

2、可以⽤ docker save 命令将镜像保存到本地 tar ⽂件,也可以⽤ docker load 命令将本地tar ⽂件导⼊镜像。

3、 可以⽤ docker build 构建 Dockerfile 镜像。

4、可以⽤ docker run 和 docker create 将镜像运⾏成 container (容器),容器内可以安装所需要的 APP。

5、 可以⽤ docker commit/export 将容器做成镜像反复的使⽤。

6、可以将⾃⼰制作的镜像发布到 hub.docker.com ⽹站,需要注册账号。

6、Docker 核⼼概念

1、镜像(images):⼀个⾯向 docker 容器引擎的只读模板,也是容器的基础,类似于 iso 镜像⽂件。

2、容器(container):基于镜像所创建的虚拟实例,相当于⼀个简易的 Linux 环境,可启停,且多个容器之间互相隔离。

3、仓库(Repository):集中存放 docker 镜像的位置,可使⽤ docker pull 或 push 命令下载或上传到私有或公有仓库。

4、仓库注册服务器(registry):存放仓库的地⽅,如果没有私有仓库,则使⽤公共仓库 docker hub。

7、Docker 特性

⽂件系统隔离:每个进程容器运⾏在⼀个完全独⽴的根⽂件系统⾥。

资源隔离:实现不同的容器的资源配额和调度,cgroup。

⽹络隔离:每个进程容器运⾏在⾃⼰的⽹络空间,拥有虚拟接⼝和 IP 地址。

⽇志记录:Docker将收集到和记录的每个进程容器的标准流 (stdout/stderr/stdin),⽤于实时检索或者批量检索。

变更管理:容器⽂件系统的变更可以提交到新的镜像中,并可重复使⽤以创建更多的容器。

交互式shell:Docker可以分配⼀个虚拟终端并且关联到任何容器的标准输出上,例如运⾏⼀个⼀次性交互shell。

⼆、安装 Docker

1、Docker 要求

2、安装 Docker

 [root@docker ~]# cat << EOF | tee /etc/modules-load.d/k8s.conf> overlay> br_netfilter> EOFoverlaybr_netfilter# 加载overlay内核模块[root@docker ~]# modprobe overlay # 加载br_netfilter内核模块[root@docker ~]# modprobe br_netfilter [root@docker ~]# cat /etc/modules-load.d/k8s.conf overlaybr_netfilter[root@docker ~]# cat << EOF | tee /etc/sysctl.d/k8s.conf> net.bridge.bridge-nf-call-iptables = 1> net.bridge.bridge-nf-call-ip6tables = 1> net.ipv4.ip_forward = 1> EOF[root@docker ~]# sysctl --system[root@docker ~]# yum -y install yum-utils device-mapper-persistent-data lvm2# 添加阿⾥云yum源[root@docker ~]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo[root@docker ~]# yum -y install  docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin # 启动docker守护进程[root@docker ~]# systemctl start docker# 查看本地镜像[root@docker ~]# docker imagesREPOSITORY   TAG       IMAGE ID       CREATED       SIZE

overlay:是⼀种⽂件系统层叠技术,常⽤于容器化平台(⽐如 Docker)中。它允许将多个⽂件系统叠加在⼀起,从⽽创建⼀个统⼀可⻅的⽂件系统。通过加载 overlay 模块,可以在 Linux 系统中使⽤ overlay ⽂件系统,并且它将提供⼀些额外的功能,⽐ 如联合挂载、⽂件层叠等。

br_netfilter:Linux 内核中的⼀个模块,它提供了桥接设备 (bridge device) 和⽹络过滤器(netfilter) 之间的集成。它允许在桥接设备上使⽤⽹络过滤器功能,如防⽕墙规则、⽹络地址转换 (NAT) 等。通过加载 br_netfilter 模块,你可以在 Linux 系统中的桥接设备上应⽤⽹络过滤规则对⽹络流量进⾏管理和控制。

device-mapper-persistent-data:⼀个Linux内核模块,它为 Device Mapper设备提供持久存储功能。DMPD提供了⼀个⽤于存储映射关系的数据库,使得Device Mapper可以持久化存储映射数据,以便在系统重新启动后仍然可以恢复之前的映射关系。

lvm2:Linux系统下的逻辑卷管理⼯具,LVM 的升级版,它是对磁盘分区进⾏管理的⼀种机制,建⽴在硬盘和分区之上的⼀个逻辑层,⽤来提⾼磁盘管理的灵活性。

三、使用docker

1、启动服务获得镜像

 # 在仓库中查找centos的镜像[root@docker ~]# docker search centos# 配置docker镜像站[root@docker ~]# vim /etc/docker/daemon.json{"registry-mirrors" : ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn"]}# 重启docker[root@docker ~]# systemctl restart docker# 从仓库中拉取centos的镜像[root@docker ~]# docker pull centos# 查看本地镜像[root@docker ~]# docker imagesREPOSITORY   TAG       IMAGE ID       CREATED       SIZEcentos       latest    5d0da3dc9764   2 years ago   231MB

2、创建运行容器

 # 第一次创建容器[root@docker ~]# docker run -it --name=c0 centos:latest /bin/bash# 配置阿里云的yum仓库[root@41c9a7796fde /]# cd /etc/yum.repos.d/[root@41c9a7796fde yum.repos.d]# rm -rf *.repo[root@41c9a7796fde yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo[root@41c9a7796fde yum.repos.d]# yum clean all && yum makecache[root@41c9a7796fde yum.repos.d]# cd# 安装httpd[root@41c9a7796fde ~]# yum -y install net-tools[root@41c9a7796fde ~]# yum -y install httpd[root@41c9a7796fde ~]# yum -y install iproute[root@41c9a7796fde ~]# psPID TTY          TIME CMD1 pts/0    00:00:00 bash81 pts/0    00:00:00 ps[root@41c9a7796fde ~]# ifconfigeth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 172.17.0.2  netmask 255.255.0.0  broadcast 172.17.255.255# 显示系统的运行时间、当前登录的用户数量以及系统的平均负载情况[root@41c9a7796fde ~]# uptime06:37:00 up 33 min,  0 users,  load average: 0.00, 0.01, 0.02# 查看基于 Red Hat 的系统的发行版本信息[root@41c9a7796fde ~]# cat /etc/redhat-release CentOS Linux release 8.4.2105

3、在容器中配置httpd服务并在外部主机中访问

 # 修改httpd的配置文件[root@41c9a7796fde ~]# echo "docker_httpd_server" > /var/www/html/index.html# 表明当前的容器环境不是以systemd作为初始化系统启动的,所以无法使用systemctl启动服务[root@41c9a7796fde ~]# systemctl start httpdSystem has not been booted with systemd as init system (PID 1). Can't operate.Failed to connect to bus: Host is down# 在命令行中直接启动 Apache 服务[root@41c9a7796fde ~]# httpd -k start#  Apache HTTP 服务器在启动时无法可靠地确定服务器的完全限定域名,因此使用了IP地址 172.17.0.2AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message[root@41c9a7796fde ~]# curl localhostdocker_httpd_server[root@41c9a7796fde ~]# curl http://localhost:80docker_httpd_server[root@41c9a7796fde ~]# curl http://172.17.0.2:80docker_httpd_server新开一终端:[root@docker ~]# curl http://172.17.0.2:80docker_httpd_server# 一旦退出容器,将无法访问到容器的httpd服务,再次进入到容器中,服务已正常关闭,需要重启服务才能正常工作

4、非正常退出容器(容器继续运行,服务继续工作)

 # 在当前系统中查找与 “docker” 相关的进程信息[root@docker ~]# ps -aux | grep docker#  Docker 守护进程,进程ID为1350,由root用户启动。它正在监听文件描述符(-H fd://)并与 containerd 进行交互(--containerd=/run/containerd/containerd.sock)。root       1350  0.0  6.7 1635992 32612 ?       Ssl  14:15   0:01 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock# 执行“ps -aux | grep docker”命令自身产生的进程,进程ID为2445,也是由root用户在终端(pts/0)中启动,用于在输出结果中过滤出包含“docker” 的行。root       2445  0.0  0.2 112724   964 pts/0    S+   15:06   0:00 grep --color=auto docker# 启动名字为c0的容器[root@docker ~]# docker start c0# 在正在运行的名为 “c0” 的容器中启动一个交互式的 Bash shell[root@docker ~]# docker exec -it c0 /bin/bash# 将c0的终端挂载附加到当前的终端上[root@docker ~]# docker attach c0[root@41c9a7796fde /]# # 期望退出,服务继续运行curl+p+q[root@41c9a7796fde /]# read escape sequence# 列出当前正在运行的 Docker 容器的相关信息[root@docker ~]# docker psCONTAINER ID   IMAGE           COMMAND       CREATED             STATUS          PORTS     NAMES41c9a7796fde   centos:latest   "/bin/bash"   About an hour ago   Up 33 minutes             c0

5、关闭docker守护进程

 # 查看docker状态[root@docker ~]# systemctl status docker# 查看版本[root@docker ~]# docker version# 关闭docker守护进程[root@docker ~]# systemctl stop dockerWarning: Stopping docker.service, but it can still be activated by:docker.socket# docker守护进程已关闭,无法进入容器中[root@docker ~]# docker attach c0You cannot attach to a stopped container, start it first

6、套接字的应用

 # 套接字文件为/tmp/mysql.sock[root@mysql_c ~]# vim /usr/local/mysql/my.cnf [mysqld]basedir=/usr/local/mysqldatadir=/usr/local/mysql/datasocket=/tmp/mysql.sockport=3310log-error=/usr/local/mysql/data/db01-slave.errrelay-log=/usr/local/mysql/data/relaylogserver-id=11character_set_server=utf8mb4# mysql服务未开启[root@mysql_c ~]# netstat -lnput | grep mysql# 无sock文件[root@mysql_c ~]# ls -lh /tmp/总用量 0drwx------. 3 root root 17 8月  22 15:30 systemd-private-2aed4145d94f4730bb8da071dc67b409-chronyd.service-tcRXAEdrwx------. 2 root root  6 8月  21 15:35 vmware-root# 开启mysql服务[root@mysql_c ~]# service mysql57 startStarting MySQL.. SUCCESS! # 查看mysql文件是否开启成功[root@mysql_c ~]# netstat -lnput | grep mysqltcp6       0      0 :::3310                 :::*                    LISTEN      1477/mysqld # 出现sock⽂件[root@mysql_c ~]# ls -lh /tmp/总用量 4.0Ksrwxrwxrwx. 1 mysql mysql  0 8月  22 15:31 mysql.sock-rw-------. 1 mysql mysql  5 8月  22 15:31 mysql.sock.lockdrwx------. 3 root  root  17 8月  22 15:30 systemd-private-2aed4145d94f4730bb8da071dc67b409-chronyd.service-tcRXAEdrwx------. 2 root  root   6 8月  21 15:35 vmware-root

7、docker套接字的配置(设置允许远程管理)

 # docker的守护进程已经关闭,查看docker的套接字(时间不对)[root@docker ~]# ls -lh /var/run/srw-rw----.  1 root   docker    0 8月  22 14:15 docker.sock# 开启docker的守护进程,时间还是不对[root@docker ~]# systemctl start docker[root@docker ~]# ls -lh /var/run/srw-rw----.  1 root   docker    0 8月  22 14:15 docker.sock# 查看docker服务文件[root@docker ~]# vim /usr/lib/systemd/system/docker.service

 # 修改daemon.json文件[root@docker ~]# vim /etc/docker/daemon.json {"registry-mirrors" : ["https://do.nark.eu.org","https://dc.j8.work","https://docker.m.daocloud.io","https://dockerproxy.com","https://docker.mirrors.ustc.edu.cn","https://docker.nju.edu.cn"],# 指定 Docker 守护进程的监听地址"hosts" : [# 表示Docker守护进程将在所有网络接口上监听TCP连接,端口号为 2375"tcp://0.0.0.0:2375","unix:///var/run/docker.sock"]}# 修改docker服务文件[root@docker ~]# vim /usr/lib/systemd/system/docker.service13 ExecStart=/usr/bin/dockerd # 开启docker守护进程,发现启动不了[root@docker ~]# systemctl start docker.service Warning: docker.service changed on disk. Run 'systemctl daemon-reload' to reload units.Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.# 加载daemo.json文件[root@docker ~]# systemctl daemon-reload# 启动docker守护进程,成功[root@docker ~]# systemctl start docker.service Warning: docker.service changed on disk. Run 'systemctl daemon-reload' to reload units.# 查看docker服务是否启动(要允许远程连接,需要有一个服务,使用端口体现)[root@docker ~]# netstat -lntup | grep dockertcp6       0      0 :::2375                 :::*                    LISTEN      3198/dockerd   # 查看docker.sock文件是否更新成功(sock套接字),成功[root@docker ~]# ll /var/run/docker.sock srw-rw----. 1 root docker 0 8月  22 16:14 /var/run/docker.sock# 通过指定IP地址为“10.0.0.100”的Docker守护进程来查看镜像列表(远程管理)[root@docker ~]# docker -H 10.0.0.100 imagesREPOSITORY   TAG       IMAGE ID       CREATED       SIZEcentos       latest    5d0da3dc9764   2 years ago   231MB

8、查看dockers的帮助信息,选项的应用

 [root@docker ~]# docker --helpCommon Commands:run         Create and run a new container from an imageexec        Execute a command in a running containerps          List containersbuild       Build an image from a Dockerfilepull        Download an image from a registrypush        Upload an image to a registryimages      List imageslogin       Log in to a registrylogout      Log out from a registrysearch      Search Docker Hub for imagesversion     Show the Docker version informationinfo        Display system-wide informationManagement Commands:builder     Manage buildsbuildx*     Docker Buildxcompose*    Docker Composecontainer   Manage containerscontext     Manage contextsimage       Manage imagesmanifest    Manage Docker image manifests and manifest listsnetwork     Manage networksplugin      Manage pluginssystem      Manage Dockertrust       Manage trust on Docker imagesvolume      Manage volumes......# 查看启动的容器[root@docker ~]# docker psCONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES# 查看全部的容器[root@docker ~]# docker ps -aCONTAINER ID   IMAGE           COMMAND       CREATED       STATUS                         PORTS     NAMES41c9a7796fde   centos:latest   "/bin/bash"   2 hours ago   Exited (0) About an hour ago             c0# 启动名字为c0的容器[root@docker ~]# docker start c0c0# 进入c0容器中[root@docker ~]# docker attach c0# 开启httpd服务[root@41c9a7796fde /]# httpd -k startAH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message# 访问当地httpd服务[root@41c9a7796fde /]# curl localhostdocker_httpd_server# 非正常退出容器,容器继续正常运行[root@41c9a7796fde /]# read escape sequence# 查看运行中的容器[root@docker ~]# docker ps CONTAINER ID   IMAGE           COMMAND       CREATED       STATUS              PORTS     NAMES41c9a7796fde   centos:latest   "/bin/bash"   2 hours ago   Up About a minute             c0# 显示有关Docker安装和当前系统配置的详细信息[root@docker ~]# docker infoClient: Docker Engine - CommunityVersion:    26.1.4Context:    defaultDebug Mode: falsePlugins:buildx: Docker Buildx (Docker Inc.)Version:  v0.14.1Path:     /usr/libexec/docker/cli-plugins/docker-buildxcompose: Docker Compose (Docker Inc.)Version:  v2.27.1Path:     /usr/libexec/docker/cli-plugins/docker-compose

这篇关于培训第三十四天(初步了解Docker与套接字的应用)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1097516

相关文章

ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法

《ElasticSearch+Kibana通过Docker部署到Linux服务器中操作方法》本文介绍了Elasticsearch的基本概念,包括文档和字段、索引和映射,还详细描述了如何通过Docker... 目录1、ElasticSearch概念2、ElasticSearch、Kibana和IK分词器部署

docker如何删除悬空镜像

《docker如何删除悬空镜像》文章介绍了如何使用Docker命令删除悬空镜像,以提高服务器空间利用率,通过使用dockerimage命令结合filter和awk工具,可以过滤出没有Tag的镜像,并将... 目录docChina编程ker删除悬空镜像前言悬空镜像docker官方提供的方式自定义方式总结docker

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

JavaScript中的isTrusted属性及其应用场景详解

《JavaScript中的isTrusted属性及其应用场景详解》在现代Web开发中,JavaScript是构建交互式应用的核心语言,随着前端技术的不断发展,开发者需要处理越来越多的复杂场景,例如事件... 目录引言一、问题背景二、isTrusted 属性的来源与作用1. isTrusted 的定义2. 为

Python调用另一个py文件并传递参数常见的方法及其应用场景

《Python调用另一个py文件并传递参数常见的方法及其应用场景》:本文主要介绍在Python中调用另一个py文件并传递参数的几种常见方法,包括使用import语句、exec函数、subproce... 目录前言1. 使用import语句1.1 基本用法1.2 导入特定函数1.3 处理文件路径2. 使用ex

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

Linux中Curl参数详解实践应用

《Linux中Curl参数详解实践应用》在现代网络开发和运维工作中,curl命令是一个不可或缺的工具,它是一个利用URL语法在命令行下工作的文件传输工具,支持多种协议,如HTTP、HTTPS、FTP等... 目录引言一、基础请求参数1. -X 或 --request2. -d 或 --data3. -H 或

在Ubuntu上部署SpringBoot应用的操作步骤

《在Ubuntu上部署SpringBoot应用的操作步骤》随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一,Java作为一种跨平台的编程语言,具有广泛的应用场景,本... 目录一、部署准备二、安装 Java 环境1. 安装 JDK2. 验证 Java 安装三、安装 mys

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一