发牌SO 发表于 2019-2-21 08:26:19

Docker架构(一)安装及镜像操作

Docker架构

Docker简介
  Docker是在Linux容器里面运行应用的开源工具,是一种轻量级虚拟机,Docker的好处在于“一次封装,到处运行”,既可以是一个应用,也可以是一套服务,甚至是一个完整的操作系统。

安装Docker
  Docker支持在主流的操作系统平台上使用,包括Windows、Linux、MacOS等
这里用CentOS 7系统

(1)配置Docker自己的安装源
  配置仓库

cat /etc/yum.repos.d/docker.repo

name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
  yun安装Docker

systemctl start docker.service -y
systemctl enable docker.service
  查看版本

docker version
Client:
Version:      17.05.0-ce
API version:1.29
Go version:   go1.7.5
Git commit:   89658be
Built:      Thu May4 22:06:25 2017
OS/Arch:      linux/amd64
Server:
Version:      17.05.0-ce
API version:1.29 (minimum version 1.12)
Go version:   go1.7.5
Git commit:   89658be
Built:      Thu May4 22:06:25 2017
OS/Arch:      linux/amd64
Experimental: false
  Docker镜像操作
  1):搜索镜像
  格式: docker search [服务名称]
  以搜索apache为例

docker search apache
docker search apache
NAME                                           DESCRIPTION                                     STARS   OFFICIAL   AUTOMATED
tomcat                                       Apache Tomcat is an open source implementa...   1971            
httpd                                          The Apache HTTP Server Project                  1885            
cassandra                                    Apache Cassandra is an open-source distrib...   835             
maven                                          Apache Maven is a software project managem...   649             
solr                                           Solr is the popular, blazing-fast, open so...   565             
zookeeper                                    Apache ZooKeeper is an open-source server ...   433          
#第一列代表服务所在的库,DESCRIPTION是产品描述,数字代表星级星级越高这个镜像越稳定,OFFICIAL代表通过官方审核没问题
  下载镜像
  格式:docker pull [库名(就是第一列显示出来的就是库名)]

#我以第二个http为例(下载镜像时绝对不能出错,一定要对应上库名)
docker pull httpd
Using default tag: latest
latest: Pulling from library/httpd
d660b1f15b9b: Pull complete
aa1c79a2fa37: Pull complete
f5f6514c0aff: Pull complete
676d3dd26040: Pull complete
4fdddf845a1b: Pull complete
520c4b04fe88: Pull complete
5387b1b7893c: Pull complete
Digest: sha256:8c84e065bdf72b4909bd55a348d5e91fe265e08d6b28ed9104bfdcac9206dcc8
Status: Downloaded newer image for httpd:latest
#镜像信息查询在/var/lib/docker/image/overlay repositories.json可以用cat vi去进行查看
# cat repositories.json
{"Repositories":{"hello-world":{"hello-world:latest":"sha256:2cb0d9787c4dd17ef9eb03e512923bc4db10add190d3f84af63b744e353a9b34","hello-world@sha256:4b8ff392a12ed9ea17784bd3c9a8b1fa3299cac44aca35a85c90c5e3c7afacdc":"sha256:2cb0d9787c4dd17ef9eb03e512923bc4db10add190d3f84af63b744e353a9b34"},"httpd":{"httpd:latest":"sha256:11426a19f1a28d6491041aef1e1a7a2dcaa188d0165ae495de7d8fc1bf3e164f","httpd@sha256:8c84e065bdf72b4909bd55a348d5e91fe265e08d6b28ed9104bfdcac9206dcc8":"sha256:11426a19f1a28d6491041aef1e1a7a2dcaa188d0165ae495de7d8fc1bf3e164f"}}}
#也可以用docker images
docker images
REPOSITORY          TAG               IMAGE ID            CREATED             SIZE
httpd               latest            11426a19f1a2      9 days ago          178MB
hello-world         latest            2cb0d9787c4d      4 weeks ago         1.85kB
  给镜像加标签可以在后续工作中方便试使用
  格式:docker tag [镜像名称] 名称:[标签]

docker tag httpd h1:h1
docker images
REPOSITORY          TAG               IMAGE ID            CREATED             SIZE
h1                  h1                  11426a19f1a2      9 days ago          178MB
httpd               latest            11426a19f1a2      9 days ago          178MB
#可以看到标签h1和httpd的IMAGE ID号是一样的因为他们是同一个镜像
#删除镜像标签用 docker rmi 名称:[标签]
docker rmi h1:h1
Untagged: h1:h1
docker images
REPOSITORY          TAG               IMAGE ID            CREATED             SIZE
httpd               latest            11426a19f1a2      9 days ago          178MB
  存入镜像和载入镜像
  格式:docker save -o 存储文件名 存储镜像

docker save -o /opt/hrrpd httpd
cd /opt/
ls
hrrpd
  载入镜像就是从A机器里把镜像导入到B机器里面
  格式:docker load < 存出的镜像
docker --input 存出的镜像

# docker load < /opt/hrrpd
Loaded image: httpd:latest
# docker --input hrrpd



页: [1]
查看完整版本: Docker架构(一)安装及镜像操作