docker 入门操作与本地厂库
docker 自诞生以来就是业内讨论得很火的一个话题,讨论程度仅此于openstack,后期应该会持续更新一些关于docker的内容:
docker是什么:简单来说docker 是软件工业的集装箱技术,可以实现相互隔离快速打包部署功能。
docker的安装和基本命令:
环境:
centos 7
docker安装:
1
|
[root@xiaoluo src] # yum install docker-io -y
|
##docker三个基本概念我之见:
1、镜像:可以理解成一个简单的系统,在上面可以部署和运行东西,用镜像可以启动一个容器。
2、容器:一个容器代表一个独立的任务,各容器之前相互隔离运行。
3、厂库:存放镜像的地方。
查看镜像:
1
2
3
4
|
[root@xiaoluo src] # docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
centos latest 60e65a8e4030 8 weeks ago 196.6 MB
ubuntu 14.04 d55e68e6cc9c 11 weeks ago 187.9 MB
|
*TAG:镜像的标识,当使用push不加别的版本,默认使用的是latest.
IMAGE ID:镜像的唯一标识
查看可以下载镜像:
1
|
[root@xiaoluo src] # docker search centos
|
下载镜像可以docker pull xxx 从库里下载:
交互模式下启动docker:
1
2
|
[root@xiaoluo src] # docker exec -it centos /bin/bash
[root@ 73aaba6e0cd1 / ] #
|
启动docker:
1
2
3
4
5
|
[root@localhost ~] # docker run -d -p 2222:22 --name base csphere/centos:7.193e712c9d91467c0748961685e5453a7cd50898212191a762a36c6e933dbd539
* - d 后台启动
- p 本机端口 2222 映射到docker内部的 22 口(当然前提镜像是提前构建好,后期会讲到)
- - name 给容器起一个别名 base
镜像名称csphere / centos: 7.1
|
查看正在启动的容器:
1
2
3
|
[root@localhost ~] # docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
93e712c9d914 csphere / centos: 7.1 "/usr/bin/supervisord" About a minute ago Up About a minute 0.0 . 0.0 : 2222 - > 22 / tcp base
|
*查看所有的容器使用docker ps -a
删除容器:docker rm 93e712c9d914 (删除正在运行的容器docker rm f)
docker私有厂库:
当我们使用docker pull的时候默认是从官方的镜像去下载的,在我们环境中要是搭建一个本地的厂库存放我们的镜像就在合适不过了:
步骤:
1、下载一个registry容器,官方的images有时候被墙,我这里用的是灵雀云的镜像:
1
|
[root@localhost ~] # docker pull index.alauda.cn/library/registry
|
2、重命名一个镜像:测试用
1
|
[root@localhost ~] # docker tag 7e4f044162b7 192.168.63.198:5000/test
|
*把镜像ID为7e4f044162b7定义别名192.168.63.198:5000/test
1
2
3
4
5
6
7
8
|
[root@localhost native] # docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
192.168 . 63.198 : 5000 / test latest 7e4f044162b7 8 days ago 724.9 MB
csphere / mysql 5.5 7e4f044162b7 8 days ago 724.9 MB
csphere / php - fpm 5.4 f149fdc3bb11 8 days ago 684.8 MB
csphere / centos 7.1 e3570ed66dc9 8 days ago 591.3 MB
index.alauda.cn / library / registry latest 07d93e41c370 4 weeks ago 422.8 MB
docker.io / centos centos7. 1.1503 fab4b1df8eb1 4 months ago 212.1 MB
|
3、本地启动本地镜像厂库:
1
|
[root@localhost ~] #docker run -d -p 5000:5000 -v /opt/data/registry/:/tmp/registry-dev 07d93e41c370
|
4、修改配置文件/etc/sysconf/docker:
1
2
|
打开 / etc / sysconfig / docker,找到OPTIONS这一行,取消注释并修改如下:
OPTIONS = '--selinux-enabled --insecure-registry=yourip:5000'
|
**不然会报如下类似错:
1
2
3
4
|
unable to ping registry endpoint
https: / / yourip: 5000 / v0 /
v2 ping attempt failed with error: Get https: / / yourip: 5000 / v2 / :EOF
v1 ping attempt failed with error: Get https: / / yourop: 5000 / v1 / _ping:EOF
|
5、提交镜像到本地库:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
[root@localhost native] # docker push 192.168.63.198:5000/test
The push refers to a repository [ 192.168 . 63.198 : 5000 / test] ( len : 1 )
Sending image list
Pushing repository 192.168 . 63.198 : 5000 / test ( 1 tags)
f1b10cd84249: Image successfully pushed
172633e38420 : Image successfully pushed
fab4b1df8eb1: Image successfully pushed
7911a8421c83 : Image successfully pushed
af42609f6313: Image successfully pushed
fa48118fc839: Image successfully pushed
b7ca1c16fd68: Image successfully pushed
fca316033a3c: Image successfully pushed
09f10030ab42 : Image successfully pushed
dc888ecebd54: Image successfully pushed
519dde82a4cc : Image successfully pushed
832a31216b14 : Image successfully pushed
e3570ed66dc9: Image successfully pushed
e65974137a30: Image successfully pushed
2752603711a9 : Image successfully pushed
f027aaa7d0db: Image successfully pushed
6b59cfa21ac8 : Image successfully pushed
94d6cbee9151 : Image successfully pushed
5caacec189e1 : Image successfully pushed
255629e3621b : Image successfully pushed
3ba1834f6adf : Image successfully pushed
7e4f044162b7 : Image successfully pushed
Pushing tag for rev [ 7e4f044162b7 ] on {
http: / / 192.168 . 63.198 : 5000 / v1 / repositories / test / tags / latest}
|
6、上传成功检查:
1
2
|
[root@localhost registry] # curl -X GET http://192.168.63.198:5000/v1/search
{ "num_results" : 1 , "query" : " ", " results ": [{" description ": " ", " name ": " library / test"}]}
|
到此本地厂库创建完成。
docker 入门操作与本地厂库相关推荐
- 本地厂库上传到码云报错fatal: remote origin already exists.
本地厂库上传到码云时候报错 . 试了好多次,没成功 有原因是密码错了,但是我也没改过密码,以前搞的都是直接再仓库克隆的. 解决方法: 先把仓库清理了 $ git remote rm origin 再链 ...
- 最新版本POI-5.2.0操作Excel本地导入库配置过程记录
本文是一篇基于Java+Eclipse+POI操作Excel配置POI操作记录,希望能够帮助到用得上的朋友.Exce简单易学,作为一种轻量的数据管理工具,还是很受普通用户喜爱.专业的程序员怎样把数据库 ...
- 如何新建git本地厂库
第一步: 新建一个空的文件夹 新建一个空的文件夹 新建一个空的文件夹 第二步:初始化git git init 第三步:与origin master建立连接 git remote add origi ...
- linux下修改Maven本地厂库地址
1.正确安装Maven 2.修改 [liumeng@localhost conf]$ vim /etc/maven/maven/conf/settings.xml # 修改该文件 # 将下面的< ...
- 把本地厂库提交到远程厂库
1.git init 2.git add 文件名 3.git commit -m '注释' 4.cd existing_git_repo 5.git remote add origin 6.git p ...
- Mac Docker入门安装使用
最新mac系统千万不要用brew安装,推荐使用官方文档:https://docs.docker.com/docker-for-mac/#proxies 安装镜像: docker pull centos ...
- 使用git向远程厂库提交代码时rejcted错误
在使用git向远程厂库提交代码时: 有的小朋友会出现 Push rejected: Push to origin/master was rejected 出现这样的问题应该是本地厂库和远程厂库没有管理 ...
- Maven,将本地jar包安装到Maven厂库
前提条件,本机Maven环境搭建成功.Maven环境如何搭建,可参考文章: Maven本地环境搭建 CMD窗口中输入命令:mvn -version ,验证本机Maven环境是否搭建成功,如下图一所示 ...
- 远程厂库新建的分支,本地检测不到
问题:远程厂库有 master,test,dev三个分支,本地只能检测到master,test 两个分支! 解决方法: *使用idea # 列出所有远程主机 git remote# 更新远程主机ori ...
最新文章
- JVM结构、内存分配、垃圾回收算法、垃圾收集器。
- pytorch默认初始化_“最全PyTorch分布式教程”来了!
- 【UDP协议头解析】
- oracle 9i 手工建库,简单记录Oracle 9i数据库手工建库过程
- Hadoop运行任务时一直卡在: INFO mapreduce.Job: Running job
- 修改SR4000自带软件,支持opencv
- mysql主从 副本集,MongoDB的主从、副本集模式
- 【软考 系统架构设计师】软件架构设计⑦ 构件与中间件技术
- Python 层次分析法 AHP
- Memcached缓存
- 自动驾驶数据闭环系列之一:理想丰满,现实骨感
- OpenCV的各种矩阵基本运算、基本操作及示例代码(加、减、乘、点乘、点除、乘方、开方、累加、转置、比较等)
- (转)RMAN-06004: 恢复目录数据库发生 ORACLE 错误: RMAN-20005: target database name is ambiguous
- 1.传感器学习笔记之初次相识
- CLIP4Clip: An Empirical Study of CLIP for End to End Video Clip Retrieval
- CSMA/CA工作流程图
- mcrpg服务器文件,[角色|娱乐]RPGitem-Reloaded 老牌RPG插件[1.13-1.7.2]
- kali2021更新源(最全的更新源)
- 专业显卡测试软件 spec,SPECviewperf 12.1专业性能测试
- 个人实战经验分享-虚拟产品的几种零基础起步赚钱玩法