记录几个常用的docker镜像

news2024/11/26 8:26:38

背景

Docker 部署有着非常多的优势,可以帮助提高开发、测试和部署的效率,降低成本,使应用更具可移植性和可扩展性,包括但不限于

  1. 标准化应用发布,跨平台和主机使用:Docker的镜像提供了标准化发布环境,使得应用可以在不同的平台和主机上运行,提高了可移植性。
  2. 节约时间,方便快速部署和启动:使用Docker可以快速构建、部署和启动应用,特别是在开发环境中,可以快速地构建和测试应用。
  3. 方便构建基于SOA架构或微服务架构的系统:Docker可以方便地构建和部署基于SOA架构或微服务架构的系统,使得不同的服务可以独立地开发和部署。
  4. 节约成本:通过Docker的镜像和容器化技术,可以有效地降低应用运行所需的硬件资源,从而节约成本。
  5. 方便持续集成:Docker可以方便地集成到持续集成流程中,使得代码的构建、测试和部署更加自动化。
  6. 可以作为集群系统的轻量主机或节点:Docker可以作为集群系统的轻量主机或节点,提供高效的资源管理和调度。
  7. 简化配置:Docker将运行的环境打包至容器,使用时直接启动即可,大大简化了配置过程。
  8. 快速迁移扩展:我们可以快速将容器进行打包迁移到需要的平台上应用,拥有良好的兼容性。
    而且,这么多年下来,各类应用,都已经docker化了。大大方便了我们日常的使用,以下就列举了在日常使用和开发中常用的一些docker

前置

安装好docker engine 和 docker-compose。

1. 安装docker engine

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
sudo systemctl start docker
docker version

# 设置Docker 自启动
systemctl daemon-reload
systemctl restart docker.service
systemctl enable docker.service
# 关闭docker 服务自启动
systemctl disable docker.service

# 添加docker 用户组
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker
sudo systemctl restart docker
docker ps

2. 安装 docker compose

Docker Compose是一个工具,它用于定义和运行使用Docker容器的应用程序。这个工具负责编排多个Docker容器,使容器能够相互配合完成特定的任务。它允许用户通过一个单独的docker-compose.yml模板文件(YAML格式)来定义一组相关联的应用容器为一个项目。这个文件可以用来定义多个服务以及它们之间的依赖关系,并可以指定服务的启动顺序。使用Docker Compose,用户可以很方便地在单个文件中定义一个Web项目,包括Web服务容器本身、后端的数据库服务容器以及负载均衡容器等。

$ sudo curl -L "https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

3. docker 国内加速

sudo vi /etc/docker/daemon.json

改为如下内容

{
    "registry-mirrors": [
        "https://hub-mirror.c.163.com",
        "https://mirror.baiduce.com"
    ]
}

重启docker

sudo systemctl daemo-reload
sudo systemctl restart docker

通用类

主要记录了All-in-one 上常用的docker镜像。

Portainer

Portainer是一个可视化的Docker操作界面,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。
虽然习惯了docker cli, 但是在家里的AIO 上,有个web UI,省的每次都ssh了,也方便了不少。

  1. 安装
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
  1. 启动后访问,http://ip:9000, 首次登录时创建admin账号密码

    后续就可以正常管理了。



Nextcloud

Nextcloud 是一款开源免费的私有云存储网盘项目,可以让你快速便捷地搭建一套属于自己或团队的云同步网盘,从而实现跨平台跨设备文件同步、共享、版本控制、团队协作等功能。其客户端覆盖了Windows、Mac、Android、iOS、Linux等各种平台,也提供了网页端以及WebDAV接口,方便在各种设备上访问云盘。与Dropbox等专有服务相比,Nextcloud的开放架构让用户可以利用应用程序的方式在服务器上新增额外的功能,并让用户可以完全掌控自己的数据。

  1. 安装
docker run -d \
--name nextcloud \
-p 80:80 \
-v /home/user/nextcloud:/var/www/html \
nextcloud

docker宿主机ip+port访问,即可访问,然后创建用户即可。

  1. iOS提示文件过大,无法上传
    413 error the file is too large

修改如下

/var/www/html/.user.ini
#新增俩行
upload_max_filesize=16G
post_max_size=16G

/var/www/html/.htaccess
<IfModule mod_php7.c>
  php_value mbstring.func_overload 0
  php_value default_charset 'UTF-8'
  php_value output_buffering 0
#新增部分
  php_value upload_max_filesize 16G
  php_value post_max_size 16G
  <IfModule mod_env.c>
    SetEnv htaccessWorking true
  </IfModule>
</IfModule>

/var/www/html/3rdparty/aws/aws-crt-php/php.ini
#新增
post_max_size = 16G
upload_max_filesize = 16G

iOS 客户端设置下即可
在这里插入图片描述

  1. 暴露到外网
    编辑 config/config.php 中的 “trusted_domains” 设置,加入你的域名
    如下

百度网盘

不想在本机上安装度盘,怕他读我的信息,就单独起个docker 跑。

  1. 安装
docker run -d \
--name=baidunetdisk \
-p 15811:5800 \
-p 15911:5900 \
-v /home/user/baidu/config:/config \
-v /home/user/baidu/config/downloads:/config/downloads \
-e VNC_PASSWORD=admin123 \
--restart unless-stopped \
johngong/baidunetdisk:latest
  1. 登录和使用和正常度盘差不多

Dashy

Dashy是一个开源的自托管的导航页配置服务,具有易于使用的可视化编辑器、状态检查、小工具和主题等功能。用户可以将自己常用的一些网站聚合起来放在一起,形成自己的导航页。
类似的还有homer homarr flame Heimdall
在这里插入图片描述

  1. 安装
docker run -d \
  -p 80:80 \
  -v /home/user/dashy/dashy.yml:/app/public/conf.yml \
  --name my-dashboard \
  --restart=always \
  lissy93/dashy:latest

可以在UI上,通过拖拽的方式,配置自己的当行业,或者通过编写dashy.yml文件。
此外,还支持配置访问权限

appConfig:
  theme: material
  layout: horizontal
  iconSize: large
  language: en
  auth:
    enableGuestAccess: true
    users:
    - user: adminme
      hash: 密码的hash值
      type: admin

具体可以参考:dashy quick start

Novnc

Novnc是一个基于HTML5的VNC客户端,使用WebSockets、Canvas和JavaScript实现。它通常被用于云计算和虚拟机控制面板中,如OpenStack Dashboard和OpenNebula Sunstone。虽然Novnc采用WebSockets实现,但大多数VNC服务器并不支持WebSockets,因此Novnc不能直接连接到VNC服务器,需要一个代理(如websockify)来做WebSockets和TCP sockets之间的转换。用户可以从Novnc的官方网站下载并安装该客户端,或者使用git进行安装。安装完成后,用户可以通过运行命令来启动Novnc服务,并在浏览器中输入显示的链接地址来访问Windows桌面。

如果访问一些网站,不想留下痕迹,就可以使用docker 起一个,类似沙盒。
这里用的是https://hub.docker.com/r/ljdyw/ubuntu-novnc,集成了百度云,迅雷x,火狐浏览器,图形化压缩软件,文本编辑器,qb下载器,中文桌面支持

docker run -dit -p 8080:8080 -p 6080:6080 -p 50000:50000 -p 5901:5901 -v /home/user/novnc:/root/下载 --name ubuntu1 ljdyw/ubuntu-novnc:latest

说明如下

访问端口6080
22是ssh的端口 6.0后默认关闭 打开命令 /etc/init.d/ssh start
5901是vnc端口
连接密码 root333
root密码 root333
修改密码 进入桌面后右键打开终端 输入 vncpasswd 回车-输入密码-回车-再次输入密码-回车
8080是qb访问端口
默认用户名admin
默认密码password 目录 /root/下载

Alist

Alist 是一个开源Web服务,可以添加多种网盘,将多个网盘应用集成到一个统一应用中使用,还支持通过WebDAV服务映射到操作系统本地目录使用。它不仅支持网盘存储,还支持对象存储、本地存储、FTP等等。

docker run -d --restart=always -v /etc/alist:/opt/alist/data -v /home/user/alist:/media -p 5244:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist" xhofe/alist:latest

可以配合Kodi等,搭建自己的家庭影院。
Alist+KODI打造免费家庭影院

frp

frp是fast reverse proxy的缩写,是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议,可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。frp有服务端(frps,s指service,通常搭建在有公网IP的设备上)和客户端(frpc,c指client,通常搭建在内网设备上)

  1. server 端安装
cd frps

创建docker-compose.yml, 内容如下

version: '3.3'
services:
    frps:
        restart: always
        network_mode: host
        volumes:
            - './frps.ini:/etc/frp/frps.ini'
        container_name: frps
        image: snowdreamtech/frps

同目录下新增 frps.ini 文件,样例如下

[common]
#frp 监听端口,与客户端绑定端口
bind_port= 5443
kcp_bind_port = 5443
#dashboard用户名
dashboard_user= admin
#dashboard密码
dashboard_pwd= passwd
#dashboard端口,启动成功后可通过浏览器访问如http://ip:9527
dashboard_port= 9527
#设置客户端token,对应客户端有页需要配置一定要记住,如果客户端不填写你连不上服务端
token = 1234abcd

启动

docker-compose up -d 

Tips 记得网络策略放开所需端口。

  1. client 端安装
cd frpc

同样的,创建 docker-compose.yml文件和frpc.ini的文件
docker-compose.yml

version: '3.3'
services:
    frpc:
        restart: always
        network_mode: host
        volumes:
            - './frpc.ini:/etc/frp/frpc.ini'
        container_name: frpc
        image: snowdreamtech/frpc

frpc.ini

# frpc.ini
[common]
server_addr = 43.132.202.152
server_port = 5443
token = 8ad3d1x429a2d

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 2222
remote_port = 6222

[nextcloud]
type = tcp
local_ip = 127.0.0.1
local_port = 14433
remote_port = 7004

[vnc]
type = tcp
local_ip = 127.0.0.1
local_port = 5900
remote_port = 5900
use_encryption = true
use_compression = true

启动

docker-compose up -d 

开发常用docker

Nginx Proxy Manager

Nginx Proxy Manager 是一个反向代理管理系统,它基于Nginx,具有漂亮整洁的Web UI。这个工具可以获得受信任的SSL证书,并通过单独的配置、自定义和入侵保护来管理多个代理。它是开源的,获得了很多的关注和认可。
创建 docker-compose.yml

version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'  # 冒号左边可以改成自己服务器未被占用的端口
      - '81:81'  # 冒号左边可以改成自己服务器未被占用的端口
      - '443:443' # 冒号左边可以改成自己服务器未被占用的端口
    volumes:
      - ./data:/data # 冒号左边可以改路径,现在是表示把数据存放在在当前文件夹下的 data 文件夹中
      - ./letsencrypt:/etc/letsencrypt  # 冒号左边可以改路径,现在是表示把数据存放在在当前文件夹下的 letsencrypt 文件夹中

启动

docker-compose up -d 

具体配置,参见官方文档

Halo

Halo博客系统是一款由Halo团队开发的博客系统,支持托管任意容器化应用。HALO博客系统使用Java语言编写,并基于Spring Boot框架开发。它还使用了MyBatis作为持久层框架,Redis作为缓存服务器,并使用Docker进行容器化部署。HALO博客系统具有用户认证、文章发布、评论、标签等功能,并支持多种存储方式。同时,它还支持在Docker和Kubernetes等平台上部署和使用。

一样,用docker-compose 启动, 文件内容如下,

version: "3"

services:
  halo:
    image: halohub/halo:2.9
    container_name: halo
    restart: on-failure:3
    depends_on:
      halodb:
        condition: service_healthy
    networks:
      halo_network:
    volumes:
      - ./:/root/.halo2
    ports:
      - "8090:8090"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
      interval: 30s
      timeout: 5s
      retries: 5
      start_period: 30s
    command:
      - --spring.r2dbc.url=r2dbc:pool:mysql://halodb:3306/halo
      - --spring.r2dbc.username=root
      # MySQL 的密码,请保证与下方 MYSQL_ROOT_PASSWORD 的变量值一致。
      - --spring.r2dbc.password=1234567
      - --spring.sql.init.platform=mysql
      # 外部访问地址,请根据实际需要修改
      - --halo.external-url=http://localhost:8090/

  halodb:
    image: mysql:8.0.31
    container_name: halodb
    restart: on-failure:3
    networks:
      halo_network:
    command: 
      - --default-authentication-plugin=mysql_native_password
      - --character-set-server=utf8mb4
      - --collation-server=utf8mb4_general_ci
      - --explicit_defaults_for_timestamp=true
    volumes:
      - ./mysql:/var/lib/mysql
      - ./mysqlBackup:/data/mysqlBackup
    ports:
      - "3306:3306"
    healthcheck:
      test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "--silent"]
      interval: 3s
      retries: 5
      start_period: 30s
    environment:
      # 请修改此密码,并对应修改上方 Halo 服务的 SPRING_R2DBC_PASSWORD 变量值
      - MYSQL_ROOT_PASSWORD=1234567
      - MYSQL_DATABASE=halo

networks:
  halo_network:

PostgreSQL

PostgreSQL是一种开源的关系型数据库管理系统(RDBMS),使用C语言编写。它支持SQL语言,并提供了强大的数据完整性、事务处理和安全性功能。PostgreSQL可以运行在多种操作系统上,包括Linux、Windows和macOS等。它提供了灵活的配置选项,可以根据需求进行定制,并具有可扩展性。PostgreSQL在开源社区中广泛使用,并被认为是一个可靠、高性能的数据库系统。

docker run -it --name postgress --restart always -e TZ='Asia/Shanghai' -e POSTGRES_PASSWORD='abc123' -e ALLOW_IP_RANGE=0.0.0.0/0 -v /home/postgres/data:/var/lib/postgresql -p 5432:5432 -d postgres

pgAdmin

pgAdmin pgAdmin是一个设计、维护和管理PostgreSQL数据库的通用工具。它支持多种操作系统,包括Linux、Unix、Mac OS X以及Windows,可以管理PostgreSQL 9.2以及更高版本。同时,pgAdmin还提供了大量的功能特性,如对象统计信息显示、依赖对象和被依赖对象的展示等。

pgAdmin在PostgreSQL社区中广泛使用,被视为一个可靠、高性能的数据库管理工具。如果您是PostgreSQL数据库管理员或开发人员,那么pgAdmin可能是您需要使用的工具之一。

docker run -d --name pgadmin --restart always -p 5080:80 -e 'PGADMIN_DEFAULT_EMAIL=test@abc.com' -e 'PGADMIN_DEFAULT_PASSWORD=testpwd' -e 'PGADMIN_CONFIG_ENHANCED_COOKIE_PROTECTION=True' -e 'PGADMIN_CONFIG_LOGIN_BANNER="Authorised users only!"' -e 'PGADMIN_CONFIG_CONSOLE_LOG_LEVEL=10' dpage/pgadmin4

Redis

Redis Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它是一个高性能的key-value数据库,和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。 在此基础上,redis支持各种不同方式的排序。 与memcached一样,为了保证效率,数据都是缓存在内存中。 从2010年3月15日起,Redis的开发工作由VMware主持。 从2013年5月开始,Redis的开发由Pivotal赞助。

docker run --restart=always -p 6379:6379 --name redis -d redis

gitlab

gitlab是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。它被广泛使用于基于git的开源代码管理平台,主要针对软件开发过程中产生的代码和文档进行管理。GitLab主要针对group和project两个维度进行代码和文档管理,其中group是群组,project是工程项目。一个group可以管理多个project,可以理解为一个群组中有多项软件开发任务,而一个project中可能包含多个branch,意为每个项目中有多个分支,分支间相互独立,不同分支可以进行归并。

docker run --detach \
  --hostname gitlab.example.com \
  --publish 19443:443 --publish 19080:80 --publish 19022:22 \
  --name gitlab \
  --restart always \
  --volume /home/user/gitlab/config:/etc/gitlab \
  --volume /home/user/gitlab/logs:/var/log/gitlab \
  --volume /home/user/gitlab/data:/var/opt/gitlab \
  gitlab/gitlab-ce:latest

创建用户

docker exec -it gitlab bash
gitlab-rails console -e production
//第一个默认为root
user = User.where(id: 1).first
//必须同时更改密码和password_confirmation才能使其正常工作
user.password = '123456'
user.password_confirmation = '123456'
user.save!

REF

  • docker-install
  • Docker 配置国内源加速(2023/05/14)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1146958.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于引力搜索算法的无人机航迹规划-附代码

基于引力搜索算法的无人机航迹规划 文章目录 基于引力搜索算法的无人机航迹规划1.引力搜索搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用引力搜索算法来优化无人机航迹规划。 …

报错:Error: error:0308010C:digital envelope routines::unsupported

运行旧项目时&#xff0c;报错&#xff1a;Error: error:0308010C:digital envelope routines::unsupported 主要原因&#xff1a;node版本太高了 解决方法&#xff1a;package.json 包文件中&#xff0c;添加代码 set NODE_OPTIONS--openssl-legacy-provider && &am…

代码审计-锐捷EG易网关 download.php 后台任意文件读取漏洞

首先登录到后台中(可以组合 锐捷EG易网关 管理员账号密码泄露漏洞) 关键部分代码为 直接从Get请求中提取 file参数读取文件&#xff0c;可以使用 …/ 跳转目录 验证POC /download.php?aread_txt&file../../../../etc/passwd漏洞证明&#xff1a; 文笔生疏&#xff0c;…

C的自定义类型

目录 1. 结构体 1.1. 结构体类型的声明 1.1.1. 特殊声明 2. 结构的自引用 3. 结构体变量的定义和初始化 4. 结构体内存对齐 4.1. 结构体内存对齐 4.2. 修改默认对齐数 5. 结构体传参 6. 结构体实现位段&#xff08;位段的填充&可移植性&#xff09; 6.1. 什么是位…

集丰照明|博物馆照明设计安全保护四大注意事项

博物馆展品是博物馆一切行为的中心&#xff0c;策划、装修、布展、照明、开展、撤展所有过程都围绕珍贵的展品而设置。因此&#xff0c;在整个行为过程中如何安全保护独一无二的珍稀展品成为博物馆展览的首要课题&#xff0c; 博物馆照明设计 必须优先处理好安全保护展品和更…

问题 X: 阿牛的EOF牛肉串(分类讨论)

算法如下&#xff1a; eg.f(n,o)表示的是以N为长度&#xff0c;以O为结尾的合法字符串个数 代码实现&#xff1a;

拿捏面试官,高频接口自动化测试面试题总结(附答案)狂收offer...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 面试题&#xff1…

基于水循环算法的无人机航迹规划-附代码

基于水循环算法的无人机航迹规划 文章目录 基于水循环算法的无人机航迹规划1.水循环搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用水循环算法来优化无人机航迹规划。 1.水循环…

Windows防火墙导致端口访问不通

计算机A的IIS中部署的服务&#xff0c;在另外的计算机B中始终无法访问&#xff0c;ping和telnet都不通。   最初认为是硬件的问题&#xff0c;但是检查了网络后并未发现问题&#xff0c;同时计算机B与其它联网计算机之间也是可以相互访问。   接着测试从计算机A中ping和tel…

【网络安全 --- 文件上传靶场练习】文件上传靶场安装以及1-5关闯关思路及技巧,源码分析

一&#xff0c;前期准备环境和工具 1&#xff0c;vmware 16.0安装 若已安装&#xff0c;请忽略 【网络安全 --- 工具安装】VMware 16.0 详细安装过程&#xff08;提供资源&#xff09;-CSDN博客文章浏览阅读186次&#xff0c;点赞9次&#xff0c;收藏2次。【网络安全 --- 工…

idea 提升效率的常用快捷键 汇总

点击File --> Settings --> keymap便可进入看到 IDEA 提供的快捷键。我们也可以搜索和自定义所有快捷键 下面13个事我常用的快捷键&#xff0c;后面还有全部&#xff0c;可以当做字典来查 1.当前文件下查找&#xff1a;CtrlF 当前文件下替换&#xff1a;CtrlR 2.当前…

FPGA时序分析与约束(8)——时序引擎

一、概述 要想进行时序分析和约束&#xff0c;我们需要理解时序引擎究竟是如何进行时序分析的&#xff0c;包括时序引擎如何进行建立分析&#xff08;setup&#xff09;&#xff0c;保持分析(hold)&#xff0c;恢复时间分析(recovery)和移除时间分析(removal)。 二、时序引擎进…

2024王道考研计算机组成原理——输入输出系统

7.1.1 输入输出系统和几种IO控制方式 输入设备&#xff1a;把数据从主机外部输入主机内部 输出设备&#xff1a;把数据从主机内部输出到主机外部 现在的IO接口(芯片)通常被集成在南桥芯片的内部 DMA接口其实也是IO接口(芯片)的一种&#xff0c;磁盘准备的数据先一个字一个字…

VS2022将编码方式设置为UTF-8的一种方法

一、首先在VS2022的菜单栏中找到Tools/Customize。 二、在弹出的对话框中选择Commands标签&#xff0c;Menu bar中选择File&#xff0c;点击Add Command按钮。 三、在弹出的Add Command对话框中选择左侧Categories栏中选择File&#xff0c;在Commands栏中选择Advanced Save Opt…

吴恩达《机器学习》2-5->2-7:梯度下降算法与理解

一、梯度下降算法 梯度下降算法的目标是通过反复迭代来更新模型参数&#xff0c;以便最小化代价函数。代价函数通常用于衡量模型的性能&#xff0c;我们希望找到使代价函数最小的参数值。这个过程通常分为以下几个步骤&#xff1a; 初始化参数&#xff1a; 随机或设定初始参数…

帆软report JS实现填报控件只能填写一次

效果 方法&#xff1a; 代码&#xff1a; if(this.getValue()!"")//判断这个控件框是否有值&#xff0c;这里是不为空{this.setEnable(false)}//不为空&#xff0c;则不能再修改else{this.setEnable(true)}//为空&#xff0c;可以编辑

vue2【Options 选项API、mixin混入】,vue3【Composition 合成API、hooks】

目录 逻辑组合/复用机制 mixin混入状态复用【官方不推荐使用】 生命周期合并 同名覆盖 难溯源 hooks钩子【只能在setup生命周期中用】 ref ()、reactive()useState computed()useMemo 自定义&#xff1a; useXxx 示例 Vue2 &#xff1a;Options API选项类型&#x…

代码审计-锐捷NBR路由器 EWEB网管系统 远程命令执行

那天下着很大的雨&#xff0c;母亲从城里走回来的时候&#xff0c;浑身就是一个泥人&#xff0c;那一刻我就知道我没有别的选择了 出现漏洞的文件在 /guest_auth/guestIsUp.php 审查源码我们发现通过命令拼接的方式构造命令执行 构造payload&#xff1a; /guest_auth/guestI…

基于闪电搜索算法的无人机航迹规划-附代码

基于闪电搜索算法的无人机航迹规划 文章目录 基于闪电搜索算法的无人机航迹规划1.闪电搜索搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用闪电搜索算法来优化无人机航迹规划。 …

基于入侵杂草算法的无人机航迹规划-附代码

基于入侵杂草算法的无人机航迹规划 文章目录 基于入侵杂草算法的无人机航迹规划1.入侵杂草搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用入侵杂草算法来优化无人机航迹规划。 …