Docker命令合集

Docker命令合集

參考資料

命令格式

docker <選項(xiàng)><命令><參數(shù)>

image

選項(xiàng)說明

  • [] 表示設(shè)置選項(xiàng)時(shí)可以設(shè)置不同的值,并且可以多次使用。
  • =false表示默認(rèn)值為false
  • =""表示默認(rèn)是為空

幫助文檔

$ docker --help

用法:  docker COMMAND                                                                                                             

A self-sufficient runtime for containers                                                                                           

選項(xiàng):                                                                                                                           
      --config string      Location of client config files (default                                                                
                           "C:\\Users\\junchow\\.docker")                                                                          
  -D, --debug              開啟debug模式
  -H, --host list          Daemon socket(s) to connect to                                                                          
  -l, --log-level string   設(shè)置日志級別,級別分為debug|info|warn|error|fatal,默認(rèn)為info。                                                                             
      --tls                Use TLS; implied by --tlsverify                                                                         
      --tlscacert string   Trust certs signed only by this CA (default                                                             
                           "C:\\Users\\junchow\\.docker\\machine\\machines\\default\\ca.pem")                                      
      --tlscert string     Path to TLS certificate file (default                                                                   
                           "C:\\Users\\junchow\\.docker\\machine\\machines\\default\\cert.pem")                                    
      --tlskey string      Path to TLS key file (default                                                                           
                           "C:\\Users\\junchow\\.docker\\machine\\machines\\default\\key.pem")                                     
      --tlsverify          Use TLS and verify the remote (default true)                                                            
  -v, --version            終端打印顯示版本信息并退出                                                                                                                                   
管理命令:                                                                                                               
  config      管理Docker配置
  container   管理容器                                                                                                    
  image       管理鏡像
  network     管理網(wǎng)絡(luò)
  node        管理Swarm節(jié)點(diǎn)
  plugin      管理插件
  secret      管理Docker安全
  service     管理服務(wù)
  swarm       管理Swarm集群
  system      管理Docker系統(tǒng)
  trust       Manage trust on Docker images                                                                                        
  volume      管理卷

命令:                                                                                                                          
  attach      將標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出連接到正在運(yùn)行的容器                                        
  build       使用dockerfile文件創(chuàng)建鏡像                                                                                     
  commit      從容器的修改項(xiàng)中創(chuàng)建新的鏡像
  cp          將容器的目錄或文件復(fù)制到本地文件系統(tǒng)中
  create      創(chuàng)建一個新的鏡像
  diff        檢查容器文件系統(tǒng)的修改
  events      實(shí)時(shí)輸出docker服務(wù)器中發(fā)生的事件
  exec        從外部運(yùn)行容器內(nèi)部的命令
  export      將容器的文件系統(tǒng)到處為tat文件包
  history     顯示鏡像的歷史
  images      輸出鏡像列表
  import      從壓縮為tar文件的文件系統(tǒng)中創(chuàng)建鏡像
  info        顯示當(dāng)前系統(tǒng)信息、docker容器與鏡像個數(shù)、設(shè)置信息等
  inspect     使用JSON格式顯示容器與鏡像的詳細(xì)信息
  kill        向容器發(fā)送kill信號關(guān)閉容器
  load        從tar文件或標(biāo)準(zhǔn)輸入中加載鏡像
  login       登錄docker注冊服務(wù)器
  logout      退出docker注冊服務(wù)器
  logs        輸出容器日志信息
  pause       暫停容器中正在運(yùn)行的所有進(jìn)程
  port        查看容器的端口是否處于開放狀態(tài)
  ps          輸出容器列表
  pull        從注冊服務(wù)器中拉取一個鏡像或倉庫
  push        將鏡像推送到docker注冊服務(wù)器
  rename      重命名一個容器
  restart     重啟一個或多個容器
  rm          刪除一個或多個容器,若沒有指定標(biāo)簽則刪除lastest標(biāo)簽。
  rmi         刪除一個或多個鏡像,若沒有指定標(biāo)簽則刪除lastest標(biāo)簽。                                                
  run         在一個新容器中中運(yùn)行命令,用于指定鏡像創(chuàng)建容器。
  save        將一個或多個鏡像保存為tar包             
  search      從Docker Hub中搜索鏡像
  start       啟動一個或多個已經(jīng)停止的容器
  stats       Display a live stream of container(s) resource usage statistics                                                      
  stop        停止一個或多個正在運(yùn)行的容器
  tag         設(shè)置鏡像標(biāo)簽
  top         顯示容器中正在運(yùn)行的進(jìn)程信息
  unpause     重啟pause命令暫停的容器
  update      更新一個或多個容器的配置
  version     顯示docker版本信息
  wait        等待容器終止然后輸出退出碼                                                                                                                                   
Run 'docker COMMAND --help' for more information on a command.                                                                     

image

容器生命周期

docker run

# run用于指定鏡像創(chuàng)建容器
$ docker run [選項(xiàng)] <鏡像名稱, id> [命令] [參數(shù)]

# 選項(xiàng)
-d, --detach=false 指定容器運(yùn)行于前臺還是后臺,默認(rèn)為false。
-i, --interactive=false 打開標(biāo)準(zhǔn)輸入用于控制臺交互
-t, --tty=false 分配tty設(shè)備用來支持終端登錄,默認(rèn)為false。
-u, --user="" 指定容器的用戶
-a, --attach=[] 登錄容器,必須是以docker run -d啟動的容器。
-w, --workdir="" 設(shè)置容器的工作目錄
-c, --cpu-shares=0 設(shè)置容器CPU權(quán)重,在CPU共享場景下使用。
-e, --env=[] 設(shè)置環(huán)境變量,容器中可使用該環(huán)境變量。
-m, --memory="" 設(shè)置容器的內(nèi)存上限
-p, --public=[] 設(shè)置容器暴露的端口
-h, --hostname="" 設(shè)置容器的主機(jī)名
-v, --volume=[] 設(shè)置容器掛載的存儲卷,也就是掛載到容器的某個目錄。
--volumn-from=[] 給容器掛載其他容器上的卷,也就是掛載到容器的某個目錄。
--cap-add=[] 添加權(quán)限
--cap-drop=[] 刪除權(quán)限
--cidfile="" 運(yùn)行容器后在指定文件中寫入容器PID值,這是典型的監(jiān)控系統(tǒng)的用法。
--cpuset="" 設(shè)置容器可以使用那些CPU,此參數(shù)用來設(shè)置容器獨(dú)占CPU。
--device=[] 添加主機(jī)設(shè)備給容器,相當(dāng)于設(shè)備直通。
--dns=[] 設(shè)置容器的DNS服務(wù)器
--dns-search=[] 設(shè)置容器的DNS搜索域名,寫入到容器的/etc/resolv.conf文件。
--env-file=[] 設(shè)置環(huán)境變量文件,文件格式為每行一個環(huán)境變量。
--expose=[] 設(shè)置容器暴露的端口,即修改鏡像的暴露端口。
--link=[] 設(shè)置容器之間的關(guān)聯(lián)關(guān)系,使用其他容器的IP、env等信息。
--lxc-conf=[] 設(shè)置容器的配置文件,只有在指定--exe-driver=lxc時(shí)使用。
--name="" 設(shè)置容器的名稱,可通過名字進(jìn)行容器管理,links特性需要使用名字。
--net="bridge" 容器網(wǎng)絡(luò)設(shè)置
--privileged=false 設(shè)置容器是否為特權(quán)容器,特權(quán)容器擁有所有的capabilities。
--restart="no" 設(shè)置讓其停止后的重啟策略
--rm=false 設(shè)置容器停止后自動刪除容器,不支持以docker run -d啟動的容器。
--sig-proxy=true 設(shè)置由代理接收并處理信號,但SIGCHLD、SIGSTOP、SIGKILL不能被代理。

# 命令
-d, --detach Detach模式,默認(rèn)為守護(hù)進(jìn)程模式,即容器以后臺方式運(yùn)行。
--rm=false 若容器內(nèi)的進(jìn)程終止則自動刪除容器,禁止和-d選項(xiàng)一起使用。
--sig-proxy=true 將所有信號傳遞給進(jìn)程,非TTY模式也一樣,但不能傳遞SIGCHLD、SIGKILL、SIGSTOP信號。

# 運(yùn)行一個在后臺執(zhí)行的容器,同時(shí)使用控制臺管理。
$ docker run -i -t -d ubuntu:latest

# 運(yùn)行一個帶命令且在后臺不斷執(zhí)行的容器,不直接展示容器內(nèi)部信息。
$ docker run -d ubuntu:latest ping www.docker.com

# 運(yùn)行一個在后臺不斷執(zhí)行的容器,同時(shí)帶有命令,程序被終止后還能重啟繼續(xù)跑,可用控制臺管理。
$ docker run -d --restart=always ubuntu:latest ping www.docker.com

# 為容器指定一個名字
$ docker run -d --name=ubuntu_server ubuntu:latest

# 容器暴露80端口并指定宿主機(jī)81端口與其通信(宿主機(jī)端口:容器端口)
$ docker run -d --name=ubuntu -p 81:80 ubuntu:latest

# 指定容器內(nèi)目錄與宿主機(jī)目錄共享(宿主機(jī)目錄:容器目錄)
$ docker run -d --name=ubuntu_server -v /home/www:/var/www ubuntu:latest

# 設(shè)置宿主機(jī)與docker的共享目錄
$  docker run -d -i -t  -p 80:80 -v /share/swoft:/var/www/swoft --name swoft swoft/swoft /bin/bash

使用docker run啟動容器,docker在后臺的標(biāo)準(zhǔn)操作流程:

  1. 檢查本地是否存在指定的鏡像,若不存在則從公有倉庫下載。
  2. 使用鏡像創(chuàng)建并啟動容器
  3. 分配一個文件系統(tǒng),并在只讀的鏡像層外面掛載一層可讀可寫層。
  4. 從宿主機(jī)配置的網(wǎng)橋接口中橋接一個虛擬機(jī)接口到容器中去
  5. 從地址池分配一個IP地址給容器
  6. 執(zhí)行用戶指定的應(yīng)用程序
  7. 執(zhí)行完畢后容器被終止
image

docker create

# create 使用指定的鏡像創(chuàng)建容器,與run命令不同的是,使用create命令只能創(chuàng)建容器而并不啟動。
$ docker create [選項(xiàng)] <鏡像名稱,id> <命令> [參數(shù)]

# 選項(xiàng)
-a, --attach=[] 將標(biāo)準(zhǔn)輸入、標(biāo)準(zhǔn)輸出、標(biāo)準(zhǔn)錯誤鏈接到容器
-C, --cpu-shares=0 設(shè)置CPU資源分配,默認(rèn)為1024。
-e, --env=[] 向容器設(shè)備環(huán)境變量,用于傳遞設(shè)置或密碼。
-h, --hostname="" 設(shè)置容器主機(jī)名
-i, --interactive=false 激活標(biāo)準(zhǔn)輸入,即使未與容器連接,也維持標(biāo)準(zhǔn)輸入。
-m, --memory="" 設(shè)置內(nèi)存限制,格式<數(shù)字><單位>,單位可用b、k、m、g。
-P, --publish-all=false 將連接到主機(jī)的容器的所有端口暴露在外
-p, --publish=[] 將連接到主機(jī)的容器的特定端口暴露在外,主要用于暴露web服務(wù)器的端口。
-t, --tty=false 使用TTY模式,若要使用Bash則必須設(shè)置該選項(xiàng)。
-u, --user="" 設(shè)置容器運(yùn)行時(shí)要使用的Linux用戶賬戶和UID
-v, --volume=[] 設(shè)置數(shù)據(jù)卷,設(shè)置要與主機(jī)共享的目錄,不將文件保存到容器而是直接保存到主機(jī),在主機(jī)目錄后添加:ro與:rw進(jìn)行讀寫設(shè)置,默認(rèn)未:rw。
-w, --workdir="" 設(shè)置容器內(nèi)部要運(yùn)行進(jìn)程的目錄
-add-host=[] 向容器的/etc/hosts添加主機(jī)名與IP地址
--cap-add=[] 設(shè)置容器中使用的cgroups的特定capablity,若設(shè)置為all則使用所有的capablity。
--cap-drop=[] 從容器中刪除cgroup的特定capablity。
--cidfile="" 設(shè)置cid文件路徑,cid中存儲著所創(chuàng)建容器的id。
--cpuset="" 在多核CPU中設(shè)置要運(yùn)行容器的核心數(shù)
--device=[] 添加主機(jī)設(shè)備到容器,格式為<主機(jī)設(shè)備>:<容器設(shè)備>
--dns=[] 設(shè)置容器中使用的DNS服務(wù)器
--dns-search=[] 設(shè)置docker中要使用的DNS搜索域
--entrypoint="" 忽略Dockerfile的ENTRYPOINT設(shè)置,強(qiáng)制設(shè)置為其他值。
--env-file=[] 向容器應(yīng)用設(shè)置環(huán)境變量文件
--expose=[] 僅連接容器的端口和主機(jī),并不暴露在外。
--link=[] 進(jìn)行容器連接,格式 <容器名稱>:<別名>
--lxc-conf=[] 若使用LXC驅(qū)動則可設(shè)置LXC選項(xiàng)
--name 設(shè)置容器名稱
--net="bridge" 設(shè)置容器的網(wǎng)絡(luò)模式
--privileged=false 在容器內(nèi)部使用主機(jī)的所有l(wèi)inux內(nèi)核功能
--restart="" 設(shè)置容器內(nèi)部進(jìn)程終止時(shí)重啟策略
--security-opt=[] 設(shè)置SELinux、AppArmor選項(xiàng)
--volumn-from=[] 連接數(shù)據(jù)卷容器,設(shè)置格式未<容器名稱,id>:<:ro, :rw>,默認(rèn)讀寫設(shè)置遵從-v選項(xiàng)的設(shè)置。

# 使用docker鏡像nginx:latest創(chuàng)建一個容器名為ubuntu_serve
$ docker create --name ubuntu_serve ubuntu:latest
$ docker create -it --name ubuntu_server ubutnu:latest /bin/bash

docker start

# start用于啟動容器
$ docker start <選項(xiàng)><容器名稱, id>

# 選項(xiàng)
-a, --attach=false 將標(biāo)準(zhǔn)輸入、標(biāo)準(zhǔn)輸出、標(biāo)準(zhǔn)錯誤連接到容器,傳遞所有信號。
-i, --interactive=false 激活標(biāo)準(zhǔn)輸入

docker stop

# stop用于終止容器
$ docker stop <選項(xiàng)><容器名稱, id>

# 選項(xiàng)
-t, --timeout=10 設(shè)置終止容器前的等待時(shí)間,單位為秒。

docker restart

# restart 用于重啟容器
$ docker restart [選項(xiàng)] <容器名稱, id>

docker pause

# pause 用于暫停容器中所有的進(jìn)程
$ docker pause [選項(xiàng)] <容器名稱, id>

docker unpause

# unpause用于重啟使用pause命令暫停的容器
$ docker unpause <容器名稱, id>

docker kill

# kill用于殺掉一個運(yùn)行中的容器,發(fā)送SIGKILL信號來停止的主進(jìn)程。
$ docker kill [選項(xiàng)] <容器名稱, id>

# 選項(xiàng)
-s 向容器發(fā)送一個信號

# 殺死運(yùn)行中的容器nginx
$ docker kill -s KILL nginx

docker rm

# rm用于刪除一個或多個容器
$ docker rm [選項(xiàng)] <容器名稱,id>

# 選項(xiàng)
-f 通過SIGKILL信號強(qiáng)制刪除一個運(yùn)行中的容器
-l 移除容器間的網(wǎng)路連接而非容器本身
-v 刪除與容器關(guān)聯(lián)的卷

# 強(qiáng)制刪除容器test
$ docker rm -f test

# 刪除容器test并刪除掛載的數(shù)據(jù)卷
$ docke rm -v test 

docker exec

# exec 用于在運(yùn)行中的容器中執(zhí)行命令
$ docker exec [選項(xiàng)] <容器名稱, id> <命令> [參數(shù)]

# 選項(xiàng)
-d 分離模式即在后臺運(yùn)行
-i 即使沒有附加也保持STDIN標(biāo)準(zhǔn)輸入打開
-t 分配一個偽終端

# 在容器test中以交互模式執(zhí)行容器內(nèi)/root/test.sh腳本
$ docker exec -it test /bin/sh /root/test.sh

容器操作

docker ps

# ps用于輸出容器列表
$ docker ps <選項(xiàng)>

# 選項(xiàng)
-a, --all=false 列出所有容器,不帶-a則輸出當(dāng)前正在運(yùn)行的容器。
--before="" 列出特定容器創(chuàng)建前的容器,包含停止的容器。
-f, --filter=[] 設(shè)置輸出過濾
-l, --latest=false 列出最后創(chuàng)建的容器包含停止的容器
-q, --quiet=false 只輸出容器的ID

$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

docker top

# top用戶顯示容器中正在 運(yùn)行的進(jìn)程信息
$ docker top <容器名稱, id><ps選項(xiàng)>

$ docker top

docker attach

# attach 用于將標(biāo)準(zhǔn)輸入與標(biāo)準(zhǔn)輸出連接到正在運(yùn)行的容器
$ docker attach <選項(xiàng)><容器名稱, id>

docker logs

# logs用于獲取容器的日志
$ docker logs [選項(xiàng)] <容器名稱,id>

# 選項(xiàng)
-f 跟蹤日志輸出
--since 顯示某個開始時(shí)間的所有日志
-t 顯示時(shí)間戳
--tail 僅僅列出最新n條容器日志

# 跟蹤查看test容器的日志
$ docker logs -f test

# 查看test容器從2019年4月1日以后的最新10條日志
$ docker logs --since="2019-04-01" --tail=10 test

如何動態(tài)跟蹤并查看myswoft容器的日志詳情呢?

docker@ ~$: docker logs -tf --details myswoft

如何清理日志文件呢?

Docker日志默認(rèn)存儲位于:/var/lib/docker/containers/<container_id>/*.log

# 在docker中切換為root用戶
docker@default: ~$ su -i

# 查看docker容器的id
root@default: ~$ docker ps -a | grep myswoft
d26ff0ff1bc0        swoft/swoft         "php /var/www/swoft/…"   2 weeks ago         Up 22 minutes       0.0.0.0:80->80/tcp                  myswoft

# 查看容器日志文件大小
root@default: ~$ ls -lh  $(find /var/lib/docker/containers/ -name *-json.log)
-rw-r-----    1 root     root           0 May 14 13:32 /var/lib/docker/containers/d26ff0ff1bc0dc0221ce5be7f78da96123a0ddbb379ab8befd2d1403f44e820b/d26ff0ff1bc0dc0221ce5be7f78da96123a0ddbb379ab8befd2d1403f44e820b-json.log

# 進(jìn)入日志目錄
root@default: ~$ cd /var/lib/docker/containers/d26ff0ff1bc0dc0221ce5be7f78da96123a0ddbb379ab8befd2d1403f44e820b

# 臨時(shí)清理日志文件
root@default: /var.../$ truncate -s 0 /var/lib/docker/containers/<container_id>/*-json.log

# 臨時(shí)清理日志文件
root@default: /var../$ cat /dev/null > *-json.log

# 使用rm刪除日志文件后是需要重啟容器的,如果容器運(yùn)行狀態(tài)下Linux進(jìn)程會引用著不會釋放磁盤空間。
root@default /var/.../$ rm -rf *-json.log

docker port

# port用于列出指定容器的端口映射,或者用于查找將PRIVATE_PORT NAT到面向公眾的端口。
$ docker port [選項(xiàng)] <容器名稱,id> [PRIVATE_PORT[/PROTO]]

# 查看test容器的端口映射情況
$ docker port test

鏡像倉庫

docker search

# search用于在docker hub中搜索鏡像
$ docker search <選項(xiàng)><搜索關(guān)鍵詞>

# 選項(xiàng)
--automated=false 只顯示由docker hub的automated build創(chuàng)建的鏡像
--no-trunc=false 顯示所有因內(nèi)容過長而省略的部分
-s, --stars=0 顯示有特定星級以上的鏡像

本地鏡像

docker images

# images用于輸出鏡像列表
$ docker images <選項(xiàng)><鏡像名稱, id>

# 選項(xiàng)
-a, --all=false 列出所有鏡像包含父鏡像。
-f, --filter=[] 設(shè)置輸出結(jié)果過濾,若設(shè)置為dangling=true則僅輸出無名鏡像。
--no-trunc=false 顯示所有因內(nèi)容過長而省略的部分

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

docker rmi

# rmi 用于刪除鏡像,若沒有指定標(biāo)簽則會刪除latest標(biāo)簽。
$ docker rmi <注冊名稱>/<鏡像名稱, id>:<標(biāo)簽>

# 選項(xiàng)
-f, --force=false 強(qiáng)制刪除鏡像
--no-prune=false 不刪除不帶標(biāo)簽的父級鏡像

# 刪除所有鏡像
$ docker rmi `docker images -aq`

docker tag

# tag用于設(shè)置鏡像標(biāo)簽
$ docker tag <選項(xiàng)><鏡像名稱>:<標(biāo)簽><注冊地址, 用戶名>/<鏡像名稱>:<標(biāo)簽>

# 選項(xiàng)
- f, --force=false 強(qiáng)制設(shè)置,即使已擁有標(biāo)簽,如遠(yuǎn)程倉庫設(shè)置標(biāo)簽。

docker save

# save用于將鏡像保存為tag包文件
$ docker save <選項(xiàng)><鏡像名稱>:<標(biāo)簽>

# 選項(xiàng)
-o, --output="" 設(shè)置保存時(shí)的文件名稱

若不設(shè)置-o選項(xiàng),tar包文件會輸出到標(biāo)準(zhǔn)輸出,所以必須設(shè)置重定向。如果僅指定鏡像名稱但沒有指指定標(biāo)簽,則會將所有標(biāo)簽都保存到一個tar包文件中。

信息查看

docker info

# info用于顯示當(dāng)前系統(tǒng)信息、docker容器和鏡像數(shù)量、設(shè)置等信息。
$ docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
Server Version: 18.09.5
Storage Driver: overlay2
 Backing Filesystem: extfs
 Supports d_type: true
 Native Overlay Diff: true
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host macvlan null overlay
 Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: bb71b10fd8f58240ca47fbb579b9d1028eea7c84
runc version: 2b18fe1d885ee5083ef9f0838fee39b62d653e30
init version: fec3683
Security Options:
 seccomp
  Profile: default
Kernel Version: 4.14.111-boot2docker
Operating System: Boot2Docker 18.09.5 (TCL 8.2.1)
OSType: linux
Architecture: x86_64
CPUs: 1
Total Memory: 989.4MiB
Name: default
ID: 7ST2:CIQM:GLVF:AUF2:QFKR:N2LB:FSO7:V6UJ:5IFN:MQVZ:WK7L:TGSS
Docker Root Dir: /mnt/sda1/var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
 provider=virtualbox
Experimental: false
Insecure Registries:
 127.0.0.0/8
Live Restore Enabled: false

docker version

# version用戶輸出docker的版本信息
$ docker version
Client:
 Version:       18.03.0-ce
 API version:   1.37
 Go version:    go1.9.4
 Git commit:    0520e24302
 Built: Fri Mar 23 08:31:36 2018
 OS/Arch:       windows/amd64
 Experimental:  false
 Orchestrator:  swarm

Server: Docker Engine - Community
 Engine:
  Version:      18.09.5
  API version:  1.39 (minimum version 1.12)
  Go version:   go1.10.8
  Git commit:   e8ff056dbc
  Built:        Thu Apr 11 04:50:00 2019
  OS/Arch:      linux/amd64
  Experimental: false
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容