Linux 基础(四)

Linux 基础(四)

一、镜像管理

(1)获取镜像
docker search centos
docker pull centos:6.9
docker pull centos:7.5.1804
docker pull nginx
(2)查询镜像
docker images
docker images -q 
docker inspect ID/name:tag
(3)删除镜像
docker rmi  ID 
docker rmi `docker images -q`
docker rmi $(docker images -q)
(4)导入导出镜像
[root@docker ~]# docker image save nginx >/opt/nginx.tar.gz
[root@docker ~]# docker image load -i /opt/nginx.tar.gz
(5)启动容器并获取镜像
[root@docker ~]# docker  run -d -p 80:80 httpd
[root@docker ~]# docker ps -a
[root@docker ~]# docker images
(6)docker一步一步学习制作镜像
# 1.启动新容器
docker run -it --name "centos7.5" 76d6bc25b8a5

# 2.优化yum源
mv /etc/yum.repos.d/*.repo /tmp
echo -e "[ftp]\nname=ftp\nbaseurl=ftp://10.0.0.100/pub/centos7\ngpgcheck=0">/etc/yum.repos.d/ftp.repo

# 3.安装必须软件包
yum install -y vim net-tools  iproute   openssh-*   -y

# 4.启动SSHD
mkdir /var/run/sshd
echo 'UseDNS no' >> /etc/ssh/sshd_config
sed -i -e '/pam_loginuid.so/d' /etc/pam.d/sshd
echo 'root:123456' | chpasswd
/usr/bin/ssh-keygen -A
/usr/sbin/sshd -D 
 # 注意: 以上操作做完之后,会一直不退出,需要用以下命令退回到宿主机,并不关闭容器
 ctrl p  q
 
 
# 5.制作镜像
docker commit centos7.5 oldguo/centos7_sshd:v2
(7)快速创建镜像
# 使用dockerfile ,配置文件名字必须叫做 dockerfile
[root@hgq ~]# cd /opt
[root@hgq opt]# mkdir dockerfile/
[root@hgq opt]# cd dockerfile/
[root@hgq dockerfile]# pwd
/opt/dockerfile
[root@hgq dockerfile]# vim dockerfile
[root@hgq dockerfile]# cat dockerfile

FROM centos:7.5.1804
RUN mv /etc/yum.repos.d/*.repo /tmp
RUN echo -e "[ftp]\nname=ftp\nbaseurl=ftp://10.0.0.100/pub/centos7\ngpgcheck=0">/etc/yum.repos.d/ftp.repo
RUN yum install -y openssh-server
RUN yum install -y openssh-clients
RUN yum install net-tools* -y
RUN yum install iproute-* -y
RUN mkdir /var/run/sshd
RUN echo 'UseDNS no' >> /etc/ssh/sshd_config
RUN sed -i -e '/pam_loginuid.so/d' /etc/pam.d/sshd
RUN echo 'root:123456' | chpasswd
RUN /usr/bin/ssh-keygen -A
EXPOSE 22
CMD ["/usr/sbin/sshd", "-D"]

[root@hgq dockerfile]# pwd
/opt/dockerfile

# 跑docker文件
[root@hgq dockerfile]# docker build -t "hgq/centos7_sshd:v2"  /opt/dockerfile

二、容器基本管理

(1)容器的类型
# 工具类:vim
docker run -it --name="test_vim" 3fe2fe0dab2e /bin/bash

# 服务类:nginx
docker run -d -p 8080:80 --name="nginx" nginx:1.14
(2)容器的多种启动方式
# 交互式启动
docker run -it --name "testcentos" centos:6.9 /bin/bash
# 主要是针对于工具类的容器,一旦exit容器,容器就自动关闭

# 守护式启动
# 1.交互式启动容器 ctrl+p+q
docker run -it --name "nginx" nginx /bin/bash
ctrl+p+q 
docker attach nginx

# 2.死循环
docker run --name nginx -d nginx /bin/sh -c "while true;do echo hello world;sleep 1;done"

# 3.服务前台运行
sshd -D
nginx -g ""


ps:hang 夯住
(3)容器的常用管理命令
docker ps -a | -q | -l

docker rm 容器ID|容器名称

# 批量删除已关闭的容器
docker rm -v $(docker ps -qa -f status=exited)

# 批量强制删除所有
docker rm -f `docker ps -a -qa`

docker top nginx
docker inspect nginx
docker attach 容器ID|容器名称(工具类)配合ctrl+p+q
docker exec -i -t 容器ID|容器名称
/bin/bash(服务类),一般是做服务类容器调试用
docker exec -it centos6.9 /bin/bash

# 结束docker
docker stop
docker kill

# 启动docker
docker start -i
docker restart 容器ID|容器名称

二、制作私有仓库

配置私有仓库
docker run -d -p 5000:5000 --restart=always --name registry -v /opt/Registry:/var/lib/registry  registry

vim /etc/docker/daemon.json
# 将   "insecure-registries": ["10.0.0.100:5000"] 添加到该文件中
{
   "registry-mirrors":                      ["https://68rmyzg7.mirror.aliyuncs.com"],
   "insecure-registries": ["10.0.0.100:5000"]
}

# 重启docker 
systemctl  restart docker
    

三、使用本地镜像

制作本地镜像并push到私有仓库中:
# 创建镜像并打上标签
docker tag nginx 10.0.0.100:5000/hgq/nginx:v1
# 查看以下刚创建的镜像
docker images
# 将刚创建的镜像push到私有仓库中
docker push 10.0.0.100:5000/hgq/nginx:v1
从私有仓库pull镜像到本地:
# 将私有仓库中已有的镜像pull到本地,然后 run 执行该镜像就可以使用了
docker pull 10.0.0.100:5000/hgq/nginx:v1
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,362评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,330评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,247评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,560评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,580评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,569评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,929评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,587评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,840评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,596评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,678评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,366评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,945评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,929评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,165评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,271评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,403评论 2 342

推荐阅读更多精彩内容