揭秘在 Linux 环境中安装 Docker 的终极指南 (揭秘在南京当美容师)
Docker 是一种流行的容器平台,可让您在轻量级、隔离的环境中打包和运行应用程序。在 Linux 环境中安装 Docker 是一个相对简单的过程,本指南将详细介绍每个步骤,并提供有关设置、配置和使用 Docker 的全面信息。
安装 Docker CE(社区版)
- 更新软件包索引:
- 安装 Docker CE 的预备包:
- 添加 Docker 官方 GPG 密钥:
- 添加 Docker 官方存储库:
- 再次更新软件包索引:
- 安装 Docker CE:
sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common
curl -fsSL| sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64]$(lsb_release -cs) stable"
sudo apt-get update
sudo apt-get install docker-ce
启动 Docker 服务
sudo systemctl start docker
验证 Docker 安装
docker run hello-world
设置 Docker Group
为了方便地运行 Docker 命令而无需使用
sudo
,建议将您的用户添加到 Docker 组:
sudo usermod -aG docker $USER
配置 Docker
您可以通过编辑以下文件来配置 Docker:
-
/etc/docker/daemon.json
:配置 Docker 引擎的全局设置,例如存储驱动程序、内存限制等。 -
/etc/docker/registries.conf
:配置用于拉取和推送镜像的注册表。
使用 Docker
拉取镜像
docker pull ubuntu
运行容器
docker run -it ubuntu bash
列出容器
docker ps
停止和移除容器
docker stop container_name && docker rm container_name
故障排除
“docker: command not found” 错误确保您已将您的用户添加到 Docker 组中。重新启动 Docker 服务:
sudo systemctl restart docker
“Permission denied” 错误确保您已将您的用户添加到 Docker 组中。使用
sudo
运行 Docker 命令。其他问题如果您遇到其他问题,请查看 Docker 官方文档或在 Docker 论坛上寻求帮助。
结论
通过遵循本指南,您已经成功地在 Linux 环境中安装和配置了 Docker。Docker 为您提供了在隔离、轻量级环境中打包和运行应用程序的强大工具。通过利用 Docker 的功能,您可以创建可移植、可扩展的应用程序,并提高您的开发和部署效率。如何在Ubuntu系统下安装docker
ubuntu下安装DockerDocker 是 dotCloud 最近几个月刚宣布的开源引擎,旨在提供一种应用程序的自动化部署解决方案,简单的说就是,在 Linux 系统上迅速创建一个容器(类似虚拟机)并在容器上部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装、部署和升级,非常方便。 因为使用了容器,所以可以很方便的把生产环境和开发环境分开,互不影响,这是 docker 最普遍的一个玩法。 更多的玩法还有大规模 web 应用、数据库部署、持续部署、集群、测试环境、面向服务的云计算、虚拟桌面 VDI 等等。 注意:由于Docker需要在Linux Kernel 3.8及以上才可以很好的工作【本人在ubuntu12.04 lts 内核3.2也正常安装】,官方更是推荐Ubuntu系统,这里有两种选择:Ubuntu 12.04 LTS或最新的Ubuntu 13.10 而本文比较喜欢倾向LTS,幸好有办法解决Kernel版本问题。 1、更新Ubuntu内核使用如下命令行更新内核至3.8.0-25sudo apt-get install linux-image-3.8.0-25-genericsudo apt-get install linux-headers-3.8.0-25-generic完成后重启电脑,通过命令 “uname -r” 来查看内核是否成功更新。 2、安装lxc-dockerroot@ubuntu: sudo apt-get install software-properties-common #增加 add-apt-repository 命令root@ubuntu: sudo apt-get install python-software-properties root@ubuntu: sudo add-apt-repository ppa:dotcloud/lxc-docker #增加一个ppa源,如:ppa:user/ppa-nameroot@ubuntu: sudo apt-get update #更新系统root@ubuntu: sudo apt-get install lxc-docker3、测试doctor是否安装成功root@ubuntu:~# docker #出现如下信息表示docker安装成功Usage: docker [OPTIONS] COMMAND [arg...]-H=[tcp://127.0.0.1:4243]: tcp://host:port to bind/connect to or unix://path/to/socket touseA self-sufficient runtime for linux containers....4、Hello World4.1、下载官方ubuntu imagelinjiqin@ubuntu:~$ sudo docker pull ubuntu #pull命令需要到国外的镜像仓库,拉取镜像,因为GFW的关系,拉取失败的可能性很大4.2、运行hello worldlinjiqin@ubuntu:~$ sudo docker run ubuntu /bin/echo hello world5、docker常用命令5.1、docker三种命令运行模式docker有三种命令运行的方式:短暂方式、交互方式、daemon方式。 a、短暂方式:就是刚刚的那个”hello world”,命令执行完后,container就终止了,不过并没有消失,可以用 sudo docker ps -a 看一下所有的container,第一个就是刚刚执行过的container,可以再次执行一遍:linjiqin@ubuntu:~$ sudo docker start container_id不过这次看不到”hello world”了,只能看到ID,用logs命令才能看得到:linjiqin@ubuntu:~$ sudo docker logs container_id可以看到两个”hello world”,因为这个container运行了两次。 b、交互方式linjiqin@ubuntu:~$ sudo docker run -i -t image_name /bin/bash #image_name为docker镜像名称c、daemon方式即让软件作为长时间服务运行,这就是SAAS啊!例如,一个无限循环打印的脚本(替换为memcached、apache等,操作方法仍然不变!):linjiqin@ubuntu:~$ CONTAINER_ID=$(sudo docker run -d ubuntu /bin/sh -c while true; do echo hello world; sleep 1; done)在container外面查看它的输出linjiqin@ubuntu:~$ sudo docker logs $CONTAINER_ID或者连接上容器实时查看linjiqin@ubuntu:~$ sudo docker attach $CONTAINER_ID终止容器linjiqin@ubuntu:~$ sudo docker stop $CONTAINER_IDlinjiqin@ubuntu:~$ sudo docker ps #看一下,已经没了5.2、docker ps命令linjiqin@ubuntu:~$ sudo docker ps #列出当前所有正在运行的containerlinjiqin@ubuntu:~$ sudo docker ps -l #列出最近一次启动的,且正在运行的containerlinjiqin@ubuntu:~$ sudo docker ps -a #列出所有的container注意:a、其他用法请参考 sudo docker ps -hb、还有一种方式可以让程序在daemon模式下运行,就是在Dockerfile里设置USER为daemon5.3、docker export命令linjiqin@ubuntu:~$ container_id=`docker run -d <image_name> ls`linjiqin@ubuntu:~$ docker export $container_id > 5.4、docker import命令 linjiqin@ubuntu:~$ cat | sudo docker import - simple_dev #simple_dev为自定义的镜像名称5.5、docker port命令linjiqin@ubuntu:~$ docker run -p 80:8080 <image> <cmd> #映射容器的8080端口到宿主机的80端口5.6、删除容器5.6.1、删除所有容器linjiqin@ubuntu:~$ sudo docker rm `sudo docker ps -a -q`5.6.1、删除具体某个容器linjiqin@ubuntu:~$ sudo docker rm $CONTAINER_ID5.7、docker命令快速参考linjiqin@ubuntu:~$ sudo docker images #查看本地镜像linjiqin@ubuntu:~$ sudo docker attach $CONTAINER_ID #启动一个已存在的docker实例linjiqin@ubuntu:~$ sudo docker stop $CONTAINER_ID #停止docker实例linjiqin@ubuntu:~$ sudo docker logs $CONTAINER_ID #查看docker实例运行日志,确保正常运行linjiqin@ubuntu:~$ sudo docker inspect $CONTAINER_ID #查看container的实例属性,比如ip等等 sudo docker run -t -i -v /home/linjiqin/dev/docker:/home/mycontainer:rw -p 8000:8000 mydocker /bin/bash写在前面,运行我们的镜像的命令使用上面的为参考,这样会挂载本地文件夹,并且会映射container的8000端口到宿主机的8000端口/home/linjiqin/dev/docker为要挂载的本地文件夹,需提前创建/home/mycontainer为docker映射路径,执行上面命令会帮我们创建
如何在ubuntu上安装docker
安装Docker借助apt-get命令,安装Docker是件轻而易举的事。 $为了允许非根用户也可以运行Docker,将你自己添加到docker群组。 下面这个命令会允许当前用户运行Docker,无需根用户权限。 $sudousermod-a-Gdocker$USER退出,然后重新登录,以激活群组成员的变化。 下一步,编辑Docker配置文件,以便更新Docker二进制代码的位置。 $sudovi/etc/default/=/usr/bin/重启Docker服务。 $管理Docker容器如果你想启动Ubuntu操作系统的一个新的Docker容器,首先需要获取UbuntuDocker映像文件。 下面这个命令会通过网络下载Docker映像文件。 $dockerpullubuntu你可以以一种交互模式来开启UbuntuDocker,如下所示。 最后一个参数“/bin/bash”是一旦启动就将在容器里面执行的命令,这里是一个简单的bash外壳命令。 $dockerrun-i-tubuntu/bin/bash上述命令会立即启动一个Ubuntu容器(这正是容器的魅力所在!),并为你提供容器里面的外壳提示符。 这时候,你应该能够访问沙盒环境里面的标准的Ubuntu操作系统了。 想退出Docker容器,在容器里面的提示符处键入“exit”。 你可以启动不同形式的容器。 比如,想启动Fedora容器,请执行下面这个命令:$-i-tfedora/bin/bash如果本地没有FedoraDocker映像文件,该命令就会首先自动下载映像文件,然后启动Docker。 如果你想启动采用某个发行版版本的容器,也可以这么做。 比如说,想启动Ubuntu13.04Docker,请执行下面这个命令:$-i-tubuntu:13.04/bin/bash容器网络Docker使用Linux网桥将容器彼此互联起来,并将它们连接到外部网络。 安装了Docker后,你应该会看到默认情况下自动组建的docker0Linux网桥。 你创建的每个容器都将连接到docker0网桥接口。 自定义Linux网桥如果你想,也可以使用自定义Linux网桥将诸容器互联起来。 为此,你可以建立一个自定义网桥,并对它进行配置,如下所示。 你可以为该网桥分配一个单独的子网,并且从子网为Docker分配IP地址。 我会使用10.0.0.0/24作为Docker子网。 $sudoapt-getinstallbridge-utils$sudobrctladdbrbr0$sudoifconfigbr010.0.0.1netmask255.255.255.0想让Docker使用自定义网桥,将“-b=br0”添加到/etc/default/中的DOCKER_OPTS变量,然后重启Docker服务。 $至此,任何新的容器都会连接到br0,其IP地址会自动从10.0.0.0/24来分配。 其他定制还有另外几种方法可以定制Docker的默认网络设置,主要是通过改动/etc/default/中的DOCKER_OPTS变量来实现。 “-dns8.8.8.8-dns8.8.4.4”:指定容器使用的DNS服务器。 “-icc=false”:让诸容器彼此隔离开来。 故障排查1.运行命令时,你会遇到下面这个错误。 dialunix/var/run/:nosuchfileordirectory(没有此类文件或目录)出现这个错误,可能是由于Docker守护程序没在运行。 检查Docker守护程序的状态,确保先启动它。 $$
如何在Ubuntu14.04上搭建私有docker registry-Linux
运行私有docker registry,就好比为docker镜像运行私有git仓库。 在Ubuntu14.04上搭建私有docker registry-Linux的步骤:第一步——安装必要的软件1、在docker registry服务器上,应当创建一个拥有sudo权限的用户(如果可以,在客户机上也如此)。 2、docker registry软件是一款python应用,因此为了使其能够运行起来,需要安装python开发环境以及必要的库:sudo apt-get updatesudo apt-get -y install build-essential python-dev libevent-dev python-pip liblzma-dev第二步——安装并配置docker registry1、为了安装最新的稳定的docker registry发行版,将使用python包管理工具pip:sudo pip install docker-registry2、docker-registry需要配置文件。 默认地,pip将该配置文件放置在相当偏僻的地方,因系统中python的安装位置而异。 因此,为了找到该路径,将尝试运行registry,以查看相关的输出:gunicorn --access-logfile - --debug -k gevent -b 0.0.0.0:5000 -w 1 docker_:application3、由于配置文件不在正确的位置,上述尝试将会以失败而告终,并输出一条包含FileNotFoundError错误消息。
若对本页面资源感兴趣,请点击下方或右方图片,注册登录后
搜索本页相关的【资源名】【软件名】【功能词】或有关的关键词,即可找到您想要的资源
如有其他疑问,请咨询右下角【在线客服】,谢谢支持!
相关文章
- 告别复杂操作!虫虫助手打造便捷高效的安卓应用下载之旅 (告别复杂操作的句子)
- 虫虫助手:你的专属安卓应用管理神器,一键安装、卸载、升级 (你给我下载一个虫虫助手)
- 虫虫助手:汇聚海量应用,满足你的所有下载需求
- 告别广告!虫虫助手带你畅享无干扰的安卓应用体验 (告别违反广告法吗)
- 虫虫助手:最强安卓应用商店,免费下载热门应用 (虫虫助手最新版更新)
- 文件共享的理想工具:ZIP 压缩软件,轻松共享大型文件,跨平台无忧 (文件共享的理由怎么写)
- 节省时间和存储空间:ZIP 压缩软件,快速高效地压缩文件,释放宝贵资源 (节省时间和存货的方法)
- 告别文件混乱:ZIP 压缩软件,将您的文件组合在整洁的压缩包中,带来清晰条理 (告别文件混乱的句子)
- 文件管理的利器:ZIP 压缩软件,简化文件组织和访问,提升工作效率 (文件管理的利弊分析)
- 文件安全传输的守护神:ZIP 压缩软件,保护您的文件免受病毒和恶意软件侵害 (文件安全传输协议)
发表评论
评论列表
- 这篇文章还没有收到评论,赶紧来抢沙发吧~