1 查询虚拟机内部有无docker安装
rpm -qa | grep docker
返回值为空,虚拟机内部未安装docker
如果有,直接可以使用docker命令,若没有执行安装步骤
2 先安装docker环境所需要的依赖包,有
yum -y install yum-utils device-mapper-persistent-data lvm2
###
Yum-utils 剖析
管理repository及扩展包的工具 (主要是针对repository)
device-mapper-persistent-data ####docker必须依赖
lvm2 #################逻辑卷管理器
3 设置docker的镜像源(首选国内,建议阿里源)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4 安装docker
yum makecache fast
yum -y install docker-ce
注释:
我们在更新yum源或者出现配置yum源之后,通常都会使用yum makecache 生成缓存
yum makecache fast
这个命令是将软件包信息提前在本地缓存一份,用来提高搜索安装软件的速度
yum clean all
yum 会把下载的软件包和header存储在cache中而不自动删除。如果觉得占用磁盘空间,可以使用yum clean指令清除缓存。
5.启动docker,并设置为开机自动启动
#启动docker服务
systemctl start docker
# 开机自动启动
systemctl enable docker
# 测试helloworld
docker run hello-world
6 docker容器已经正常安装,测试docker镜像搜索
docker search python
7 从docker仓库拉取python镜像
docker pull python
Digest: sha256:2c1045587e4452d49544c6dce92efe21c3b4b33864cfb56fdee66a2c8585c769
Status: Downloaded newer image for python:latest
docker.io/library/python:latest
8 列出本地仓库的镜像列表
[root@localhost ~]# docker images
#
REPOSITORY TAG IMAGE ID CREATED SIZE
python latest 79cc46abd78d 2 days ago 882MB
hello-world latest bf756fb1ae65 7 months ago 13.3kB
9 创建容器
docker run -d -it 79cc46abd78d /bin/bash
-d 后台
-it 交互式运行
79cc46abd78d 刚拉取的python镜像ID
/bin/bash 生成的容器默认的shell
10 进入容器(先查询容器id)
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6ef1c16beff6 79cc46abd78d "/bin/bash" 38 minutes ago Up 38 minutes competent_dubinsky
docker exec -it 6ef1c16beff6 /bin/bash
root@6ef1c16beff6:/#
container ID为6ef1c16beff6
-it 交互式运行
11 测试docker容器对应的应用(python)
root@6ef1c16beff6:/# python
python python-config python2 python2.7 python3 python3-config python3.7 python3.7m python3.8 python3.8-config python3m
容器里集合了多个python版本,我们使用python --version查询默认使用的python版本
root@6ef1c16beff6:/# python --version
Python 3.8.5
root@6ef1c16beff6:/# python
Python 3.8.5 (default, Aug 5 2020, 08:22:02)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>>
>>> a = 6
>>> b = 7
>>> print(a+b)
13
>>>
可以看出容器内python默认版本为python 3.8.5 并且python已经可用
注册docker hub保存用户名密码地址https://hub.docker.com/
docker pull ubuntu 拉取ubuntu镜像
docker build -t(tags标签) username/image_name
docker run -it -d --name=test02 ubuntu 以ubuntu镜像
docker exec -it test02 bash (进入容器test02内)
echo "Text" > test.txt && exit(在容器根目录创建test.txt并输入内容Text,并退出到linux终端上)
步骤: 1、docker tag firstimage YOUR_DOCKERHUB_NAME/firstimage 2、docker push YOUR_DOCKERHUB_NAME/firstimage 一般在这一步的时候就会出现上面的错误提示:
就在这时,二话不说直接输入:docker login
接着输入账号、密码
再输入第 2 步的命令就可以了