广州市宏利伟业电子有限公司

它适用于所有维持的版块和环境

发布日期:2024-07-03 17:47    点击次数:122

它适用于所有维持的版块和环境

图片

Docker是一个流行的用具,用于开荒和部署被称为容器的软件包。Ubuntu是最流行的Linux刊行版之一,亦然一个得到Docker维持的操作系统。

在Ubuntu上装配Docker为你的开荒面容创造一个理念念的平台,使用分享Ubuntu操作系统内核的轻量级造谣机。本教程将通过诠释已矣这一主义的4种圭表来匡助你运行。

对于Docker的更多信息

准备在Ubuntu上装配Docker

在Ubuntu上装配Docker引擎

在Ubuntu上装配Docker桌面

对于Docker的更多信息

Docker通过让你在职何Docker主机上构建和运行应用模范,匡助已矣应用模范的便携性。容器镜像不错在职何Docker可用的地点使用,无需修改–从你的条记本电脑到云霄。这通过摈斥运行环境之间的各异,简化了开荒者的体验。容器步地也很容易漫衍在多个物理机上,使你大概唐突地扩展应用模范以唐突不休变化的需求。

Docker包括你构建和运行容器镜像所需的一切,无论它们是来自Docker Hub和其他专家注册机构,如故你我方的Docker文献。

准备在Ubuntu上装配Docker

你不错在Ubuntu 18.04、20.04、21.10和22.04版块上装配最新的Docker版块。维持x64_64/AMD64、ARMhf、ARM64和S390x架构。

有几种圭表不错装配Docker,你的采用将取决于你需要的功能和你可爱的软件包料理圭表。你将在本指南中了解所有可能的选项。

采用一个Docker Flavor

Linux上的Docker传统上是只用终局的。一个正常的装配包括Docker引擎,一个运行容器的防守模范,以及与防守模范互动的 docker呐喊行界面(CLI)。

Docker桌面是使用Docker的另一种方式。历史上只在Windows和Mac上可用,它在2022年5月推出了Linux版。Ubuntu上的Docker Desktop需要一个AMD64处理器和Ubuntu 21.10或22.04。它提供了一个料理容器的图形界面,一个集成的Kubernetes集群,以及对第三方扩展的维持。Docker Desktop还为你提供了 docker和Docker Compose CLI。

Docker Desktop与Docker Engine不同,它使用造谣机来运行你的容器(这便是为什么Windows和MacOS用户需要Docker Desktop)。尽管在Ubuntu上不错并列使用这两个版块,但你可能会发现 dockerCLI版块之间的粉碎。最佳是采用一个并坚合手使用。要是你对你的终局很舒坦,况兼但愿得到最佳的维持和性能,那么就采用Docker Engine。Docker Desktop的造谣机使其略显千里重,但要是你念念要一个集成的用户界面或计较使用Kubernetes,则是更好的采用。

在Ubuntu上装配Docker引擎

Docker Engine是在Ubuntu上运行Docker的模范方式。它适用于所有维持的版块和环境,从土产货的Ubuntu桌面机到你的Ubuntu做事器云主机。在你不时之前,请确保你运行的Ubuntu版块是18.04或更新的。

Docker引擎有3种不同的装配圭表:

一个官方的Ubuntu  apt资源库

一个沉寂的Debian软件包(.deb)

一个自动装配剧本

选项1,即Ubuntu apt软件库,是最常用的。它将Docker添加到你的软件包列表中,这么你就不错通过运行 apt upgrade唐突装配异日的更新。选项2,不维持自动更新,但相等相宜在有空气过滤的离线系统上装配Docker。自动装配剧本是最约略的初学圭表,但其成就只相宜开荒使用。Docker提出不要在分娩环境中使用它。

当你与分娩系斡旋起责任,念念要唐突更新,或需要在所有环境中使用疏通的机制时,使用 apt仓库。

要是你念念在我方的机器上锤真金不怕火Docker时得回快速的装配体验,请使用自动装配剧本。

1. 使用apt仓库装配Docker

Docker publishes packages to its own aptrepository. You’ll need to add this repository to your aptsources list, otherwise, your aptinstallation won’t be able to find the Docker packages.

Docker将软件包发布到我方的 apt仓库。你需要将这个仓库添加到你的 apt源列表中,不然,你的 apt装配将无法找到Docker包。

当先,更新你现存的软件包列表,并为底下的步地装配一些依赖项。 ca-certificates, curl, gnupg和 lsb_release用具将被用来下载正确的Docker apt仓库细节和你系统的签名密钥。尽管你可能还是有了这些软件包,但确保它们是可用的也无妨。

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo apt update$ sudo apt install ca-certificates curl gnupg lsb-release$ sudo apt update $ sudo apt install ca-certificates curl gnupg lsb-release$ sudo apt update $ sudo apt install ca-certificates curl gnupg lsb-release

接下来,在apt上注册Docker的GPG密钥圈。这将让 apt考据你装配的Docker包。

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo mkdir -p /etc/apt/keyrings$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg$ sudo chmod a+r /etc/apt/keyrings/docker.gpg$ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /etc/apt/keyrings/docker.gpg
$ sudo mkdir -p /etc/apt/keyrings
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
$ sudo chmod a+r /etc/apt/keyrings/docker.gpg

curl呐喊为Ubuntu下载Docker的GPG密钥,将其调换为模范的OpenGPG编码,并将其保存到apt的keyring目次中。 chmod用来诞生keyring文献的权限,以便 apt大概可靠地检测到它。

当今你不错把Docker包的源代码添加到你的系统中。运行底下的呐喊:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ echo 'deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable' | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null$ echo 'deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable' | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null$ echo 'deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable' | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

这使用shell替换来自动检测你的系统架构,如AMD64或ARM64,并下载相应的软件包列表。它将使用之前添加的GPG密钥进行考据。该软件库被手脚一个新的软件包列表添加到 apt /etc/apt/sources.list.d directory.中。

再次更新你的软件包列表,让 apt知说念Docker软件包的存在:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo apt update$ sudo apt update
$ sudo apt update

当今你不错使用 apt install呐喊将Docker的组件添加到你的系统中。你将会装配最新版块的Docker社区版(CE)。有三个软件包需要装配:

docker-ce: Docker引擎防守模范。

docker-ce-cli: 你将与之互动的Docker CLI。

containerd.io: 被称为containerd的容器运行时辰,用于启动和运行你的容器。

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo apt install docker-ce docker-ce-cli containerd.io$ sudo apt install docker-ce docker-ce-cli containerd.io$ sudo apt install docker-ce docker-ce-cli containerd.io2. 使用Debian Packagers装配Docker

官方的 .deb包诞生起来很约略,但你必须手动下载和装配每个新版块。软件包被托管在一个约略的文献做事器上。当先浏览Docker的发布说明页面,找到最新的可用版块号,比如20.10.20。接下来,前去containerd的GitHub页面,也不错检察其版块号。它将看起来像1.6.8。

当今你不错运行底下的呐喊序列,为你的平台下载正确的软件包。将<DOCKER_VERSION>和 <CONTAINERD_VERSION>阔别替换为现时Docker和containerd的版块号。

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce.deb$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce-cli_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce-cli.deb$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/containerd.io_<CONTAINERD_VERISON>-1_amd64.deb -o containerd.deb$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce.deb $ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce-cli_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce-cli.deb $ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/containerd.io_<CONTAINERD_VERISON>-1_amd64.deb -o containerd.deb
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce.deb
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-ce-cli_<DOCKER_VERSION>~3-0~ubuntu-focal_amd64.deb -o docker-ce-cli.deb
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/containerd.io_<CONTAINERD_VERISON>-1_amd64.deb -o containerd.deb

你也不错通过在浏览器中探望你的Ubuntu版块的目次列表来下载文献并搜检所有可用的版块。

一朝你下载了Docker CE、CLI和containerd软件包,使用以下呐喊来装配它们:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo apt install ./docker-ce.deb ./docker-ce-cli.deb ./containerd.deb$ sudo apt install ./docker-ce.deb ./docker-ce-cli.deb ./containerd.deb$ sudo apt install ./docker-ce.deb ./docker-ce-cli.deb ./containerd.deb

要是你莫得使用上头提供的剧本而手动下载软件包,请颐养文献名。

3. 使用装配剧本装配Docker

Docker的便利剧本不错自动装配所有Docker组件。它短长交互式的,联系我们是以你不错坐下来恭候,而你的系统还是为你准备好了。

当先下载该剧本:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ curl -fsSL https://get.docker.com -o get-docker.sh$ curl -fsSL https://get.docker.com -o get-docker.sh
$ curl -fsSL https://get.docker.com -o get-docker.sh

当今以root权限运行该剧本:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo sh get-docker.shExecuting docker install script...$ sudo sh get-docker.sh Executing docker install script ...$ sudo sh get-docker.sh Executing docker install script ...

比及剧本达到完成。你应该看到一条阐发信息,显露Docker还是装配。

这个剧本是为了提供一个通用的治理决策。要是不服直修改剧本的源代码,你就无法定制它的功能。它也不是为膨胀Docker更新而联想的,因为它不会将依赖联系更新到最新版块。

确保Docker引擎在Ubuntu上运行

无论你使用哪种装配圭表,你皆应该通过启动一个容器来确保一切正常:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo docker run hello-world$ sudo docker run hello-world
$ sudo docker run hello-world

你会看到Docker客户端将 hello-world:image从Docker Hub仓库拉到你的机器上:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax HighlighterUnable to find image 'hello-world:latest' locallylatest: Pulling from library/hello-world2db29710123e: Pull completeDigest: sha256:7d246653d0511db2a6b2e0436cfd0e52ac8c066000264b3ce63331ac66dca625Status: Downloaded newer image for hello-world:latestUnable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 2db29710123e: Pull complete Digest: sha256:7d246653d0511db2a6b2e0436cfd0e52ac8c066000264b3ce63331ac66dca625 Status: Downloaded newer image for hello-world:latestUnable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 2db29710123e: Pull complete Digest: sha256:7d246653d0511db2a6b2e0436cfd0e52ac8c066000264b3ce63331ac66dca625 Status: Downloaded newer image for hello-world:latest

然后,一个新的容器将自动启动。hello-world “的启动镜像被成就为运行一个约略的呐喊,输出一些对于Docker的基本信息,然后立即退出:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax HighlighterHello from Docker!This message shows that your installation appears to be working correctly.To generate this message, Docker took the following steps:1. The Docker client contacted the Docker daemon.2. The Docker daemon pulled the 'hello-world' image from the Docker Hub.(amd64)3. The Docker daemon created a new container from that image which runs theexecutable that produces the output you are currently reading.4. The Docker daemon streamed that output to the Docker client, which sent itto your terminal.Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the 'hello-world' image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.
Hello from Docker!
This message shows that your installation appears to be working correctly.
To generate this message, Docker took the following steps:
1. The Docker client contacted the Docker daemon.
2. The Docker daemon pulled the 'hello-world' image from the Docker Hub.
(amd64)
3. The Docker daemon created a new container from that image which runs the
executable that produces the output you are currently reading.
4. The Docker daemon streamed that output to the Docker client, which sent it
to your terminal.

看到上头显露的输出意味着Docker还是不错使用了。防守程度得胜地从Docker Hub拉出了hello-world:latest image,并使用它启动了一个容器。从 “Hello from Docker “一瞥运行的所有本体皆是由容器内的程度发出的。

在Ubuntu上诞生Docker引擎权限

一个新的Docker引擎装配频频需要root权限来运行 dockerCLI呐喊。你需要在每个呐喊前加上 sudo,这很不简短。

首页-晨俊奥棉类有限公司

你不错在使用上述步地装配Docker Engine后,将我方添加到 docker组中,从而幸免这一条目。这一可选的改革使你有权限手脚普通用户运行 docker呐喊,而不需要 sudo,这简化了你的CLI体验。

确保 docker用户组存在:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo groupadd docker$ sudo groupadd docker$ sudo groupadd docker

然后把我方加进去:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo usermod -aG docker $USER$ sudo usermod -aG docker $USER
$ sudo usermod -aG docker $USER

要是你当年用 sudo运行过任何 docker呐喊,你需要修正你的 ~/.docker目次的权限:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo chown $USER:$USER /home/$USER/.docker -R$ sudo chmod g+rwx $HOME/.docker -R$ sudo chown $USER:$USER /home/$USER/.docker -R $ sudo chmod g+rwx $HOME/.docker -R$ sudo chown $USER:$USER /home/$USER/.docker -R $ sudo chmod g+rwx $HOME/.docker -R

这确保你我方的用户账户被允许读写该目次中的文献。

退出你的系统并再次登录,这么你的新构成员经验就会收效。尝试在莫得 sudo的情况下运行 docker呐喊:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ docker run hello-world$ docker run hello-world
$ docker run hello-world

这个装配后的步地完成了Ubuntu上的Docker诞生过程。防守程度还是被成就为自动启动,是以你不需要手动诞生做事。要是你缱绻进行高等装配,请参考Docker用户手册中对于怎样成就自界说集中、日记和卷存储料理的说明。

在Ubuntu装配中添加Docker Compose

Docker Compose是一个流行的Docker配套用具,它使使用多个容器的应用模范更容易责任。诚然 dockerCLI每条呐喊只针对一个容器,但 docker compose不错通过每个动作启动和罢手几个容器。这简化了你有沉寂的前端、后端和数据库做事的系统料理。

Docker Compose当今不错手脚 dockerCLI的一部分。当你使用官方装配剧本装配Docker时,Compose V2插件就包括在内。要是你使用这种圭表,它也不错在 apt中使用:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo apt install docker-compose-plugin$ sudo apt install docker-compose-plugin$ sudo apt install docker-compose-plugin

另外,你也不错下载最新的 .deb压缩包并手动装配:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-compose-plugin_2.6.0~ubuntu-focal_amd64.deb -o docker-compose-plugin.deb$ sudo apt install -i ./docker-compose-plugin.deb$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-compose-plugin_2.6.0~ubuntu-focal_amd64.deb -o docker-compose-plugin.deb $ sudo apt install -i ./docker-compose-plugin.deb
$ curl https://download.docker.com/linux/ubuntu/dists/$(lsb_release --codename | cut -f2)/pool/stable/$(dpkg --print-architecture)/docker-compose-plugin_2.6.0~ubuntu-focal_amd64.deb -o docker-compose-plugin.deb
$ sudo apt install -i ./docker-compose-plugin.deb

通过尝试 docker compose version呐喊来搜检Compose是否责任:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ docker compose versionDocker Compose version v2.6.0$ docker compose version Docker Compose version v2.6.0$ docker compose version Docker Compose version v2.6.0在Ubuntu上装配Docker Desktop

诚然Docker Engine仅限于CLI体验,但Docker Desktop提供了一个图形化的料理界面,内置的Kubernetes维持,以及可选的第三方扩展,不错匡助简化你的容器责任历程。当你在我方的责任站上寻求易用性时,它是一个很好的采用。

要装配Docker Desktop,当先使用 apt装配一些依赖项:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo apt update$ sudo apt install ca-certificates curl gnupg lsb-release$ sudo apt update $ sudo apt install ca-certificates curl gnupg lsb-release
$ sudo apt update
$ sudo apt install ca-certificates curl gnupg lsb-release

接下来,运行底下的一组呐喊来添加Docker的 apt资源库。尽管Docker Desktop并不包括在这个软件库中,但其中的软件包会被Desktop的Debian归档手脚依赖项援用。

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo mkdir -p /etc/apt/keyrings$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg$ sudo chmod a+r /etc/apt/keyrings/docker.gpg$ echo 'deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable' | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null$ sudo apt update$ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /etc/apt/keyrings/docker.gpg $ echo 'deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable' | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null $ sudo apt update$ sudo mkdir -p /etc/apt/keyrings $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg $ sudo chmod a+r /etc/apt/keyrings/docker.gpg $ echo 'deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable' | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null $ sudo apt update

curl呐喊下载Docker在Ubuntu下的GPG密钥,将其调换为模范的OpenGPG编码,并将其保存到 apt的keyring目次下。chmod用于诞生keyring文献的权限,以便 apt大概可靠地检测到它。

从文档中的说合下载Docker Desktop Debian归档。这将提供最新的Docker Desktop for Linux的踏实版块。使用apt装配该软件包,将你下载的版块号替换进去:

Plain textCopy to clipboardOpen code in new windowEnlighterJS 3 Syntax Highlighter$ sudo apt install ./docker-desktop-4.11.0-amd64.deb$ sudo apt install ./docker-desktop-4.11.0-amd64.deb
$ sudo apt install ./docker-desktop-4.11.0-amd64.deb

Docker Desktop当今会出当今你的应用启动器中。使用你的启动器来启动Docker Desktop并开放用户界面。你也能在终局运行 docker, docker compose和 kubectl呐喊。该应用模范还为你的shell托盘添加了一个菜单,显露现时的Docker Desktop情状,并让你膨胀一些快速操作。

在你第一次运行Docker Desktop时,你会被教导接纳做事条约。要是你痛快,请按下接纳按钮,然后恭候Docker Desktop启动其造谣机。

几分钟后,姿色板将加载。它提供了从流行镜像创建新容器的快捷方式,幸免了冗长的终局呐喊。

图片

在Ubuntu上装配了Docker Desktop

小结

Docker是大大批开荒者运哄骗用容器的方式。你不错唐突地在Ubuntu系统上装配Docker,无论是Docker引擎如故新的Docker桌面。一朝你装配了Docker,你就统统有智商构建和运行容器成功案例,让你简化开荒,减少环境之间的各异。

阅读全文 本站仅提供存储做事,所有本体均由用户发布,如发现存害或侵权本体,请点击举报。

  • 上一篇:没有了
  • 下一篇:没有了


Powered by 广州市宏利伟业电子有限公司 @2013-2022 RSS地图 HTML地图

Copyright 站群系统 © 2013-2024 sswl 版权所有