Docker的安装和使用
2018-01-02 16:00
363 查看
登录远程服务器:ssh root@0.0.0.0,root为用户名,回车输入密码
一、安装Docker
1.Mac下安装Docker
安装Docker,下载地址https://docs.docker.com/docker-for-mac/
安装教程https://github.com/widuu/chinese_docker/blob/master/installation/mac.md
安装后下载镜像timeout,需要翻墙,https://segmentfault.com/a/1190000011996587
2.Linux下安装Docker
2.1 Ubuntu安装Docker
报错处理
安装curl,使用curl安装
或者检查apt-get更新源,然后再次输入sudo apt-get update命令更新:
若安装完执行docker version报错:Segmentation Fault or Critical Error encountered. Dumping core and aborting
一是检查系统版本是不是32位系统,官方发布的docker二进制形式文件是64位的,但是如果你使用的是32的系统肯定是不能运行的;
二是centOS下安装Docker出现这个问题,是因为有的linux版本中使用yum install docker 安装运行时就会这个错误。解决方法是:
2.2 centOS安装Docker
安装docker-compose
二、使用Docker
查看docker信息
容器管理
镜像管理
docker hub
在容器中的操作
错误处理
在下载镜像的时候报错 Pulling repository ubuntu Tag latest not found in repository ubuntu,需要修改镜像源,换成国内的镜像源
一、安装Docker
1.Mac下安装Docker
安装Docker,下载地址https://docs.docker.com/docker-for-mac/
安装教程https://github.com/widuu/chinese_docker/blob/master/installation/mac.md
安装后下载镜像timeout,需要翻墙,https://segmentfault.com/a/1190000011996587
2.Linux下安装Docker
uname -a //查看系统的版本,Ubuntu使用apt-get安装,centOS使用yum安装 Linux instance-obh3ma9w 2.6.32-696.16.1.el6.x86_64 #1 SMP Wed Nov 15 16:51:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
2.1 Ubuntu安装Docker
apt-get update apt-get install -y docker.io
报错处理
E: Unable to locate package docker.io E: Couldn't find any package by regex 'docker.io'
安装curl,使用curl安装
或者检查apt-get更新源,然后再次输入sudo apt-get update命令更新:
sudo gedit /etc/apt/sources.list #使用163源 直接添加在文件后面 deb http://mirrors.163.com/ubuntu/ precise main restricted deb-src http://mirrors.163.com/ubuntu/ precise main restricted deb http://mirrors.163.com/ubuntu/ precise-updates main restricted deb-src http://mirrors.163.com/ubuntu/ precise-updates main restricted deb http://mirrors.163.com/ubuntu/ precise universe deb-src http://mirrors.163.com/ubuntu/ precise universe deb http://mirrors.163.com/ubuntu/ precise-updates universe deb-src http://mirrors.163.com/ubuntu/ precise-updates universe deb http://mirrors.163.com/ubuntu/ precise multiverse deb-src http://mirrors.163.com/ubuntu/ precise multiverse deb http://mirrors.163.com/ubuntu/ precise-updates multiverse deb-src http://mirrors.163.com/ubuntu/ precise-updates multiverse deb http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiverse deb-src http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiverse deb http://mirrors.163.com/ubuntu/ precise-security main restricted deb-src http://mirrors.163.com/ubuntu/ precise-security main restricted deb http://mirrors.163.com/ubuntu/ precise-security universe deb-src http://mirrors.163.com/ubuntu/ precise-security universe deb http://mirrors.163.com/ubuntu/ precise-security multiverse deb-src http://mirrors.163.com/ubuntu/ precise-security multiverse deb h d7e6 ttp://extras.ubuntu.com/ubuntu precise main deb-src http://extras.ubuntu.com/ubuntu precise main
若安装完执行docker version报错:Segmentation Fault or Critical Error encountered. Dumping core and aborting
一是检查系统版本是不是32位系统,官方发布的docker二进制形式文件是64位的,但是如果你使用的是32的系统肯定是不能运行的;
二是centOS下安装Docker出现这个问题,是因为有的linux版本中使用yum install docker 安装运行时就会这个错误。解决方法是:
yum list installed |grep docker //找到安装的docker yum -y remove <docker名> //卸载 yum -y install docker-io//注意要安装包带后缀-io
2.2 centOS安装Docker
yum update yum install -y docker
安装docker-compose
pip install docker-compose
//重启docker service docker restart //新版重启docker systemctl start docker
二、使用Docker
查看docker信息
//查看docker版本 docker version //显示docker系统的信息 docker info
容器管理
//查看正在运行的容器 docker ps //查看所有容器 docker ps -a docker ps -l //创建一个新的容器 docker run ubuntu echo "hello world" //创建一个守护式容器在后台运行 docker run -d //指定端口号 docker run -d -p 8002:80 //运行一个容器 docker start <containerID> //停止运行某个容器 docker stop <containerID> //进入正在运行的容器 docker attach <containerID> docker exec -it <container> bash //解决进入容器不能输入中文的问题 docker exec -it <container> env LANG=C.UTF-8 bash //删除容器 docker rm <containerID> //停止所有容器 docker stop $(docker ps -q) //删除所有容器 docker rm $(docker ps -aq)
//查看容器的IP docker inspect <containerName> | grep IPAddress //下载组件 docker run learn/tutorial apt-get install -y ping //查看端口映射 iptables -t nat -nL //查看容器所有参数 docker inspect <容器ID> //获得容器IP docker inspect cocky_hermann | grep IPAddress //将容器的8000端口映射到docker主机的8001端口 iptables -t nat -A DOCKER -p tcp --dport 8080 -j DNAT --to-destination 172.17.0.2:8000
镜像管理
//检索镜像 ubuntu、learn/ping、nginx docker search image_name //下载镜像 docker pull image_name //显示所有镜像 docker images //删除镜像 docker rmi <imageID> docker rmi -f <imageID> //删除所有none镜像 docker rmi $(docker images | grep "none" | awk '{print $3}') //删除所有镜像 docker rmi $(docker images -q) //打包镜像 docker save -o python-achievements-image.tar.gz <imageName> //加载镜像 docker load -i python-achievements-image.tar.gz
docker hub
//登录docker hub,输入用户名userName密码登录 docker login //退出 docker logout //命名镜像 docker tag <imageName> <userName>/<imageName> //发布镜像,在docker hub创建仓库imageName //构建镜像。将某个容器提交到本地仓库。无需拷贝完整的id,通常来讲最开始的三至四个字母即可区分 docker commit <containerId> <userName>/<imageName> //将本地仓库推送到远程仓库 docker push <userName/imageName> //发布镜像后,镜像保存在自己的用户名下,根据用户名可查询所有镜像,然后pull相应的镜像 docker search coldchains NAME DESCRIPTION STARS OFFICIAL AUTOMATED coldchains/python_achievements 0 coldchains/python-mysql 0
在容器中的操作
//退出容器并关闭 exit //退出容器不关闭 control+P+Q //使用apt-get下载组件 apt-get update apt-get -y install python3-pip pip3 install django pip3 install mysql-python apt-get -y install git
错误处理
在下载镜像的时候报错 Pulling repository ubuntu Tag latest not found in repository ubuntu,需要修改镜像源,换成国内的镜像源
//创建文件 vi /etc/docker/daemon.json //添加以下内容,保存 { "registry-mirrors": ["https://registry.docker-cn.com"] } //重启docker
官方docker hub访问非常的慢,安装之后最好先切换国内镜像:执行: curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://ef017c13.m.daocloud.io 然后再重启:systemctl restart docker
在Ubuntu中安装mysql后,后来通过mysql -u用户名 -p密码 的命令连接Mysql数据库时,报错"can't connect to local mysql serverthrough socket'/var/run/mysqld/mysqld.sock'" 解决方法: 在不重新安装mysql的情况下,通过如下命令来解决,具体的就是先停止mysql服务,再重新开启mysql服务 cd /etc/init.d sudo service mysql stop sudo service mysql start //卸载 sudo apt-get autoremove --purge mysql-server sudo apt-get remove mysql-common //用于彻底删除 //安装 sudo apt-get install mysql-server //输入mysql密码 sudo apt-get install mysql-client
相关文章推荐
- ubuntu14.04+docker的安装及使用
- Virtualbox 安装CoreOS 学习使用Docker
- Ubuntu14.04(32位)下安装使用docker
- CentOS-Docker安装与使用
- 【Docker】Dockerfile使用apt-get来安装jdk
- boot2docker安装及使用
- docker mysql镜像安装和使用
- docker windows 7 mysql安装使用教程
- CentOS6.6安装和使用Docker
- Ubuntu 14.04(64位)安装和使用docker
- Ubuntu14.04(32位)下安装使用docker
- Docker的安装使用-第1章
- Linux中Docker安装后如何使用Docker容器
- Mac OS X 下安装使用 Docker
- 阿里云部署Docker(8)----安装和使用redmine
- windows 7 docker oralce安装和使用
- docker安装与简单使用
- docker安装使用