Docker安裝與使用

Docker安裝與使用

一、docker安裝。

1、安裝要求:

1)docker要求服務CentOS6以上,kernel 版本必須2.6.32-431或更高

查看系統的版本和內核:

cat /etc/issue?

uname -r

2)要將Docker安裝到CentOS上,首先啟用EPEL軟件庫

wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

sudo rpm -ivh epel-release-6-8.noarch.rpm

2、安裝docker

yum install docker-io

3、啟動docker

service docker start

4、設置開機啟動

chkconfig docker on

systemctl enable docker

5、將自己添加到docker群組,那樣才能以非root用戶的身份來運行Docker。為此,使用這個命令:

usermod -a -G docker $USER?

退出,重新登錄,以激活群組變更。

6、centos7安裝最新版的docker

(1)首先升級一下系統包 (可以跳過)

yum update

(2)卸載舊版本的 Docker

yum erase docker docker-common docker-client docker-compose

(3)添加 Docker 的 yum 源

創建一個 /etc/yum.repos.d/docker.repo 文件,內容如下:

[dockerrepo]

name=Docker Repository

baseurl=https://yum.dockerproject.org/repo/main/centos/7/

enabled=1

gpgcheck=1

gpgkey=https://yum.dockerproject.org/gpg

(4)安裝新版本 Docker

yum install -y docker-engine

(5)安裝完后設置為系統開機自動啟動服務

systemctl enable docker.service

(6)啟動服務

systemctl start docker

7、centos6安裝新版的docker

(1)先安裝1.7.1版本

#Centos6的1.7.1版本Docker在EPEL和Docker官方源提供,EPEL方便點

yum install epel-release -y

#docker-io才是1.7.1版本的,叫docker那個是1.5版本的

yum install docker-io -y

#下載1.9.1然后替換

curl -sSL -O https://get.docker.com/builds/Linux/x86_64/docker-1.9.1

chmod +x docker-1.9.1

sudo mv docker-1.9.1 /usr/bin/docker

service docker restart

(2)編譯新版本

2.1)yum install git make -y

wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz

tar xzf go1.8.3.linux-amd64.tar.gz -C /usr/local

mkdir /usr/local/gopackage

2.2)vi /etc/profile

#在profile中加入下面的環境變量,PATH如果原來就有請自行合并

GOROOT=/usr/local/go

GOPATH=/usr/local/gopackage

PATH=$PATH:$GOROOT/bin:$GOPATH/bin

export GOROOT GOPATH PATH

source /etc/profile

2.3)#這兒會要你輸密碼,直接回車就行,docker移到了moby,不過依舊不影響

git clone https://git@github.com/docker/docker

cd docker

#要啥版本你自己看著切換

git checkout v1.13.1

make build

make binary

然后會在bundles目錄下生成你版本號的目錄,里面有binary-client和binary-daemon目錄,前者是docker文件以及它的md5和sha256文件,后者是一堆程序以及它們的md5和sha256(可以刪了)

2.4)找個地方丟著然后直接運行dockerd啟動daemon然后使用docker來交互就行,原有的/etc/init.d/docker文件你需要刪掉了,因為無法兼容新版本的啟動方式

二、基本命令

1、搜索鏡像

docker search <image>

如:docker search ubuntu12.10

NAME? ? ? ? ? ? ? ? ? ? ? ? DESCRIPTION? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? STARS? ? OFFICIAL? AUTOMATED

mirolin/ubuntu12.10? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 0

marcgibbons/ubuntu12.10? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 0

mirolin/ubuntu12.10_redis? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 0

chug/ubuntu12.10x32? ? ? ? Ubuntu Quantal Quetzal 12.10 32bit? base i...? 0

chug/ubuntu12.10x64? ? ? ? Ubuntu Quantal Quetzal 12.10 64bit? base i...? 0

docker search

2、下截鏡像

docker pull <image>

如:docker pull chug/ubuntu12.10x64

3、查看本地擁有的鏡像

docker images: 列出images

docker images -a :列出所有的images(包含歷史)

docker images --tree :顯示鏡像的所有層(layer)

docker rmi? <image ID>: 刪除一個或多個image

4、刪除本地鏡像

docker rmi

5、根據鏡像創建并啟動容器

docker run --name shell -i -t ubuntu:latest /bin/bash

5.1)參數說明:

--name:給容器的名稱

-i:打開STDIN,用于控制臺交互 ,表示可以interactive,可以交互

-t:打開終端,表示給容器tty終端

-d:后臺運行。如果不設這個參數,容器運行完就退出

-p:端口映射:ip:port:contanter port

-v:冒號前為宿主機目錄,必須為絕對路徑,冒號后為鏡像內掛載的路徑

5.2)例如:

docker run -p 7000:6379 --name redis-redisbloom redislabs/rebloom:latest

BF.RESERVE bloomfilter:user:black 0.0001 10000000

BF.RESERVE? {error_rate} {size}

docker run -d -p 5001:22 -p5002:80 -p5003:3306? --privileged=true -v /home/docker_data/hhht:/home/ --name centos-hhht -it centos? /bin/bash

6、退出容器

exit

7、進入正在運行的docker容器

1)docker attach db3 或者 docker attach d48b21a7e439 :db3是后臺容器的NAMES,d48b21a7e439是容器的進程ID? CONTAINER ID然后就進去了這個容器的ssh界面。但是它有一個缺點,只要這個連接終止,或者使用了exit命令,容器就會退出后臺運行

2)docker exec -it db3 bash 或者 docker exec -it d48b21a7e439 bash :db3是后臺容器的NAMES,d48b21a7e439是容器的進程ID? CONTAINER ID

8、停止容器

docker stop 容器id

9、啟運容器

docker start 容器id

10、刪除容器

docker rm

11、列出本機的容器列表

docker ps

12、使用Dockerfile創建image:

docker build -t "sloan/centos-latest:v4" .

其中-t標記添加tag,指定新的鏡像的用戶信息。 "."Dockerfile所有的路徑。

13、修改image的tag:

docker tag e5b5df13b85e sloan/centos-latest?

docker images sloan/centos-latest

14、上傳鏡像:

docker push sloan/centos-latest

15、保存Container到images

docker commit -a="sloan" -p=true -m="mongodb dir" e2e2e75ac08d

16、修改正在運行的容器端口映射

1)獲取容器ip

docker inspect 容器名稱 | grep IPAddress

2)增加端口映射

iptables -t nat -A DOCKER -p tcp --dport 主機端口 -j DNAT --to-destination 容器IP:容器端口

firewall-cmd --add-forward-port=proto=80:proto=tcp:toaddr=192.168.0.1:toport=8080 # 將80端口的流量轉發至192.168.0.1的8080端口

17、查看docker容器啟動日志

docker logs -f -t --since="2017-05-31" --tail=10 mysql-node1

三、docker 網絡設置

1、docker網絡介絡

Docker安裝后,默認會創建下面三種網絡類型

$ docker network ls

NETWORK ID? ? NAME? ? ? ? DRIVER? ? ? SCOPE

9781b1f585ae? ? bridge? ? ? bridge? ? ? local

1252da701e55? ? host? ? ? ? host? ? ? ? local

237ea3d5cfbf? ? none? ? ? ? null? ? ? ? local

2、啟動 Docker的時候,用 --network 參數,可以指定網絡類型

docker run -itd --name test1 --network bridge --ip 172.17.0.10 centos:latest /bin/bash

3、bridge:橋接網絡

默認情況下啟動的Docker容器,都是使用 bridge,Docker安裝時創建的橋接網絡,每次Docker容器重啟時,會按照順序獲取對應的IP地址,這個就導致重啟下,Docker的IP地址就變了

4、none:無指定網絡

使用 --network=none ,docker 容器就不會分配局域網的IP

5、host: 主機網絡

使用 --network=host,此時,Docker 容器的網絡會附屬在主機上,兩者是互通的。

例如,在容器中運行一個Web服務,監聽8080端口,則主機的8080端口就會自動映射到容器中。

6、創建自定義網絡:(設置固定IP)

啟動Docker容器的時候,使用默認的網絡是不支持指派固定IP的,如下

docker run -itd --net bridge --ip 172.17.0.10 centos:latest /bin/bash

6eb1f228cf308d1c60db30093c126acbfd0cb21d76cb448c678bab0f1a7c0df6

docker: Error response from daemon: User specified IP address is supported on user defined networks only.

步驟1: 創建自定義網絡

docker network create --subnet=172.18.0.0/16 mynetwork

~ docker network ls

NETWORK ID? ? NAME? ? ? ? DRIVER? ? ? SCOPE

9781b1f585ae? ? bridge? ? ? bridge? ? ? local

1252da701e55? ? host? ? ? ? host? ? ? ? local

4f11ae9c85de? ? mynetwork? ? ? bridge? ? ? local

237ea3d5cfbf? ? none? ? ? ? null? ? ? ? local

步驟2: 創建Docker容器

docker run -itd --name networkTest1 --net mynetwork --ip 172.18.0.2 centos:latest /bin/bash

docker run -itd --privileged=true -v /data/docker/data/node1:/home/ -v /data/docker/data/common:/home/common --name node1 --net mynetwork --ip 172.18.0.11 manfred/centos7-ssh /bin/bash

四、構建docker鏡像

1、docker commit創建鏡像

docker commit -a="sloan" -p=true -m="mongodb dir" e2e2e75ac08d

2、Dockerfile創建鏡像

1)創建dockerFile文件,內容如下

#基礎鏡像,指構建本鏡像是在哪個鏡像上創建的

FROM centos

#創建鏡像作者名稱

MAINTAINER Rico

#添加文件到鏡像中

ADD pcre-8.37.tar.gz /usr/local/src

ADD nginx-1.9.3.tar-gz /usr/local/src

#RUN 執行腳本之類的

RUN yum install -y wget gcc gcc-c++ make openssl-devel

RUN useradd -s /sbin/nologin -M www

#WORKDIR 設置操作目錄,即工作目錄

WORKDIR /usr/local/src/nginx-1.9.3

RUN ./configure --prefix=usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-pcre=/usr/local/src/prce-8.37 &&make && make install

RUN echo "daemon off;" >> /usr/local/nginx/conf/nginx.conf

#VOLUME

VOLUME

#EXPOSE 打開端口

EXPOSE 80

ENV PATH= /usr/local/nginx/sbin;$PATH

2)構建 docker build -t mynginx:tag dockerfile

五、修改Docker默認鏡像和容器的存儲位置

一共四種方法可以修改docker的存儲位置

1、軟鏈接方法

1)停止docker 服務

service docker stop

2)備份數據到新的存放路徑

cp -r /var/lib/docker/* /mnt/docker

3)修改備份 /var/lib/docker 路徑

mv /var/lib/docker{,.bak}

4)創建軟連接

ln -s /mnt/docker /var/lib/docker

5)啟動docker

service docker start

2、修改鏡像和容器的存放路徑

指定鏡像和容器存放路徑的參數是--graph=/var/lib/docker,我們只需要修改配置文件指定啟動參數即可。

Docker 的配置文件可以設置大部分的后臺進程參數,在各個操作系統中的存放位置不一致,

在 Ubuntu 中的位置是:/etc/default/docker,在 CentOS 中的位置是:/etc/sysconfig/docker。

如果是 CentOS6 則添加下面這行:

OPTIONS=--graph="/root/data/docker" --selinux-enabled -H fd://

如果是 Ubuntu 則添加下面這行(因為 Ubuntu 默認沒開啟 selinux):

OPTIONS=--graph="/root/data/docker" -H fd://# 或者DOCKER_OPTS="-g /root/data/docker"

最后重新啟動,Docker 的路徑就改成 /root/data/docker 了。

centos7下,也可以

修改docker.service文件,使用-g參數指定存儲位置

vi /usr/lib/systemd/system/docker.service?

ExecStart=/usr/bin/dockerd --graph /new-path/docker

// reload配置文件

systemctl daemon-reload

// 重啟docker

systemctl restart docker.service

3、如果docker是1.12或以上的版本,可以修改(或新建)daemon.json文件。修改后會立即生效,不需重啟docker服務。

vim /etc/docker/daemon.json

{"registry-mirrors": ["http://7e61f7f9.m.daocloud.io"],"graph": "/new-path/docker"}

六、常用鏡像

1、安裝centos

1)搜索centos鏡像

docker search centos

2)pull centos

docker pull centos

3)運行鏡像

docker run -d -p 5001:22 -p5002:80 -p5003:3306? --privileged=true -v /home/docker_data/hhht:/home/ --name centos-hhht -it centos? /bin/bash

參數說明:

--name:給容器的名稱

-i:

-d:后臺運行

-p:端口映射:ip:port:contanter port

-v:冒號前為宿主機目錄,必須為絕對路徑,冒號后為鏡像內掛載的路徑

4)退出

exit

5)重新啟動容器

docker start 容器id

6)主機配置端口轉發

# 將80端口的流量轉發至8080

firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toport=8080

# 將80端口的流量轉發至

firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toaddr=192.168.1.0.1

# 將80端口的流量轉發至192.168.0.1的8080端口

firewall-cmd --permanent --add-forward-port=port=80:proto=tcp:toaddr=192.168.0.1:toport=8080

7)安裝常用工具

(A)網絡配置工具

yum install -y net-tools

(B)service命令

yum install initscripts -y

8)環境變量設置

如果/etc/profile設置了環境變量再次進入容器時環境變量會失效,解決辦法是將環境變量設置在

/root/.bashrc

2、安裝SSH

2.1)安裝

yum install passwd openssl openssh-server -y

yum install -y openssh-server* openssh-client*? libmysqlclient*

ssh-keygen -q -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_key -N ''

ssh-keygen -q -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ''

ssh-keygen -t dsa -f /etc/ssh/ssh_host_ed25519_key? -N ''

2.2)修改SSH配置文件

vi /etc/ssh/sshd_config

RSAAuthentication yes #啟用 RSA 認證

PubkeyAuthentication yes #啟用公鑰私鑰配對認證方式

AuthorizedKeysFile .ssh/authorized_keys #公鑰文件路徑(和上面生成的文件同)

PermitRootLogin yes #root能使用ssh登錄

UsePAM yes 改為 UsePAM no

UsePrivilegeSeparation sandbox 改為 UsePrivilegeSeparation no

2.4)

sed -i "s/#UsePrivilegeSeparation.*/UsePrivilegeSeparation no/g" /etc/ssh/sshd_config

sed -i "s/UsePAM.*/UsePAM no/g" /etc/ssh/sshd_config

2.5)開啟ssh服務

/usr/sbin/sshd -D &

2.6)常見錯誤

(1)PTY allocation request failed on channel 0

解決:? rm -rf /dev/ptmx

mknod /dev/ptmx c 5 2

好像不用以下的

chmod 666 /dev/ptmx

umount /dev/pts

rm -rf /dev/pts

mkdir /dev/pts

mount /dev/pts

3、制作鏡像

docker commit ed623c6f55b9 manfred/centos7-ssh

4、安裝mysql版本7以下

(1)例子一mysql版本7與8

docker run --name mysql -p 36007:3306 -e MYSQL_ROOT_PASSWORD=my-secret-p -v /data/docker/mysql/data:/var/lib/mysql -v /data/docker/mysql/conf:/etc/mysql/conf.d -d mysql

(2)例子二

docker run --name mysql-node1 --net mynetwork --ip 172.18.0.6 -e MYSQL_ROOT_PASSWORD=85595811 -v $DOCKER_RUNTIME/data/docker/data/mysql-node1/datadir:/var/lib/mysql -v $DOCKER_RUNTIME/data/docker/data/mysql-node1/conf:/etc/mysql/conf.d -d mysql

5、安裝mysql5

docker run -p 3306:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/LOGS:/LOGS -v $PWD/DATA:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6

參數說明:

-p 3306:3306:將容器的 3306 端口映射到主機的 3306 端口。

-v -v $PWD/conf:/etc/mysql/conf.d:將主機當前目錄下的 conf/my.cnf 掛載到容器的 /etc/mysql/my.cnf。

-v $PWD/logs:/logs:將主機當前目錄下的 logs 目錄掛載到容器的 /logs。

-v $PWD/data:/var/lib/mysql :將主機當前目錄下的data目錄掛載到容器的 /var/lib/mysql 。

-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用戶的密碼

七、創建私有倉庫http://blog.51cto.com/welcomeweb/1698778

1、運行私有服務

docker run -d --hostname localhost --name mydocker-registry -v /app/docker/registry:/docker/images -p 5000:5000 registry

參數說明:

-v /app/docker/registry:/docker/images :將本地目錄/app/docker/registry掛到私服務倉庫容器/docker/images下

–privileged=true :CentOS7中的安全模塊selinux把權限禁掉了,參數給容器加特權,不加上傳鏡像會報權限錯誤

2、在”/etc/docker/“目錄下,創建”daemon.json“文件。在文件中寫入:

如果有這個文件就在時面加一條

{ "insecure-registries":["192.168.2.200:5000"] }

3、在/etc/sysconfig/docker修改

OPTIONS='--insecure-registry 192.168.0.179:5000'? ? #CentOS 7系統

other_args='--insecure-registry 192.168.0.179:5000' #CentOS 6系統

4、重啟docker

service docker? restart? #

5、推送鏡像到倉庫

使用tag命令修改標簽

docker tag centos localhost:5000/centos

推送到倉庫

docker push localhost:5000/tomcat

6、拉取鏡像

docker pull 192.168.0.153:5000/busybox

7、查看倉庫的鏡像

http://192.168.2.200:5000/v2/_catalog

八、常用的鏡像安裝

1、Gitlab安裝

(1)安裝

sudo docker run --detach \

--hostname localhost \

--publish 1443:443 --publish 3003:3003 \

--name cn-gitlab \

--restart always \

--volume /data/gitlab/config:/etc/gitlab \

--volume /data/gitlab/logs:/var/log/gitlab \

--volume /data/gitlab/data:/var/opt/gitlab \

twang2218/gitlab-ce-zh:latest

(2)修改端口

1 修改nginx端口

sudo vi /etc/gitlab/gitlab.rb

nginx['listen_port'] = 8088

sudo vi /var/opt/gitlab/nginx/conf/gitlab-http.conf

server {

? listen *:8088;

2 修改unicorn端口(可以不修改)

sudo vi /etc/gitlab/gitlab.rb

unicorn['port'] = 8083

sudo vi /var/opt/gitlab/gitlab-rails/etc/unicorn.rb

listen "127.0.0.1:8083", :tcp_nopush => true

3 保存配置,重啟。

sudo gitlab-ctl reconfigure

sudo gitlab-ctl restart

sudo gitlab-ctl status

4 ip:8088訪問成功。(重啟服務有延時,耐心等待一會,如果是centos可能會打不開網頁,防火墻里面放開8081端口即可)

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,461評論 6 532
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,538評論 3 417
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,423評論 0 375
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,991評論 1 312
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,761評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,207評論 1 324
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,268評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,419評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,959評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,782評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,983評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,528評論 5 359
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,222評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,653評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,901評論 1 286
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,678評論 3 392
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,978評論 2 374

推薦閱讀更多精彩內容

  • 一、安裝docker 1、Docker 要求 CentOS 系統的內核版本高于 3.10 ,查看本頁面的前提條件來...
    大胡子歌歌閱讀 1,677評論 0 1
  • 0x01 核心概念 Docker鏡像類似于虛擬機鏡像,可以理解為一個面向Docker引擎的只讀模板,包含了文件系統...
    閑云逸心閱讀 4,751評論 0 9
  • Docker 學習目標: 掌握Docker基礎知識,能夠理解Docker鏡像與容器的概念 完成Docker安裝與啟...
    執筆夢一場閱讀 3,277評論 2 10
  • 下載mysql最新的mysql 鏡像 docker pull mysql 為docker mysql創建數據目錄、...
    書簡的花果山閱讀 294評論 0 0
  • 這次一起巡察的2個單位跟上次的一個鄉鎮和一個大局不一樣,雖然是說小,但從外圍和對接觀察的一些現象所得,對這...
    紅粉輕盈閱讀 156評論 0 0