由于《docker 基础教程-入门:(一)》中安装教程的麻烦,这里再给大家提供一中新的安装方式:
docker安装
请大家参考一下安装命令,ubuntu环境下:
1、whereis curl
如果当前ubuntu中没有curl,执行curl的安装命令2、sudo apt-get install -y curl
再通过curl获取docker官网的脚本,简易安装docker3、curl -sSL https://get.docker.com/ | sh
安装4、sudo docker version
查看已经安装docker的版本
5、sudo docker run ubuntu echo 'hello world'开始运行一个ubuntu的docker容器,并输出hello world
非sudo执行docker--普通用户直接运行docker
docker官方也提供了不使用root权限的方法
1、首先添加一个docker的用户组
sudo groupadd docker
2、 将当前用户添加到刚才新建的用户组中
sudo gpasswd -a huangyinqiang docker
3、重启docker服务
sudo service docker restart
4、当前用户下也就是没有使用sudo:启动容器
docker run ubuntu echo 'hello world'5、如果显示没有权限:
sudo chmod a+rw /var/run/docker.sock
ok,已经成功
docker基础命令
启动交互式容器:
docker run -i -t IMAGE /bin/bash
-i 是为容器始终打开标准输入;-t 是为新开容器开一个伪tty终端如果在run后面加上--name=container01,代表给我创建的容器起一个名字。
查看docker:
docker ps -a
-a :列出所有的docker容器,没有参数 :列出当前运行的容器查看我们刚才已经建立的容器信息:
docker inspect 6161c8eac9ca
inspect后面可以跟id,name,返回是一个json,返回数据后容器停止
docker分配的容器的名字,可以通过命令行,我们自己给容器指定一个命令
docker run --name=container01 -i -t ubuntu /bin/bash进入后台运行的docker容器中:
1、docker attach
后面加上容器的id或者是名字,这种当你推出窗口时,容器也会停止。注意这种方式我使用的时候感觉进入很慢。2、docker exec -it db3 /bin/sh
db3后面加上容器的id或者是名字,这种方式比较快一点。查看docker内部信息
docker inspect my
my是容器名称或者容器的id,将会以字符串的形式返回。
docker容器的数据卷
数据卷的特点:
数据卷在容器启动时初始化,如果容器使用的镜像在挂载点包含了数据,这些数据会拷贝到新初始化的数据卷中。
数据卷可以在容器之间共享和重用。
可以对数据卷里的容器直接进行修改
数据卷的变化不会影响镜像的更新
数据卷一直存在,即使挂载数据卷的容器已经被删除。
为容器添加数据卷:
sudo docker run -V ~/datavolume:/data -it ubuntu /bin/bash
-V:就是volumes建立数据卷,~/container_data是宿主机中数据卷的目录,/data是运行容器的相对应的数据卷位置。
如何为数据卷添加访问权限:
sudo docker run -V ~/datavolume:/data:ro -it ubuntu /bin/bash
:ro:就是创建一个只读的数据卷。容器只能读取数据卷的信息。