1、守护式容器
相对交互式容器而言,它能长期运行,没有交互式会话。
1、docker run --name container01 -it ubuntu:15.10 /bin/bash
2、docker run -d --name myTomcat -p 8888:8080 tomcat
最佳实践:
docker run --name container01 -d ubuntu:15.10
docker exec -it contaiiner01 /bin/bash
-i:表示以“交互模式”运行容器
-t:表示容器启动后会进入其命令行
第一种启动后进入容器,按Ctrl+P,Q组合键也会退出bash,变为守护容器
2、容器常用操作
1、docker ps -a -l 查看最新创建的所有容器
docker ps -a 查看创建的所有容器
2、docker inspect quirky_shirley 根据name查看容器
3、docker rm quirky_shirley 根据name删除容器(也可根据id)
4、docker start -i container01 重启一个容器
5、docker run --name=container01 -i -t ubuntu:15.10 /bin/bash 自定义容器名称 可以合并-it
docker run -d --name mydocker ubuntu:15.10 启动一个容器后台运行
6、docker stop d773b270dd36 根据id停掉后台运行的容器
7、docker attach d773b270dd36 重新进入容器;有人说attach过时了,可以用exec进入:docker exec -it mytomcat /bin/bash
8、docker login t**e 登录
9、docker logs dev_tomcat 查看容器日志
10、docker port nostalgic_elion 查看是否映射
docker run -it -v ~/software:/usr/software --privileged=true centos bash
3、镜像常用操作
1、docker images 查看镜像列表
docker images ubuntu 镜像仓库+标签指定唯一镜像
2、docker rmi ubuntu:15.10 删除镜像或指定id
3、docker inspect ubuntu:15.10 查看指定镜像
4、docker search ubuntu 搜索镜像
5、docker search -s 3 ubuntu 搜索标星三次以上的镜像
6、docker pull ubuntu:15.10 拉取镜像
docker pull mysql
docker pull mysqldocker run --name mysql2 -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123321 -d mysql
删除包含k8s镜像名称包含k8s的镜像
docker rmi --force $(docker images | grep k8s | awk '{print $3}')
4、容器安装
windows环境
1、首先win10开启虚拟化,进入BIOS --ADVANCED--CPU SETUP--VIRTUALIZABLE设置为Enable
官网下载toolbox,安装,默认执行安装全部。
2、安装完成后双击打开docker quickstart,如果说找不到bash.exe,那有可能是已经实现安装好了git。右键其快捷方式,将git 的bash.exe的安装目录修正过来;
3、如果安装托hyper-v,需要先卸载掉;控制面板-windows功能取消勾选hyper-v;但这样还是会提示hyper-v is activated;
管理员打开cmd,执行bcdedit /enum,查看有哪些非off状态的,执行bcdedit /set {xxxxxxxx} hypervisorlaunchtype off
再次双击打开docker quickstart
出现以上图片应该正常启动,此时可以看到docker为宿主机分配了一个ip,输入以下命令进一步验证:
docker version
如果出现版本信息就说明安装成功。
linux安装
yum -y install docker
#安装完成启动
service docker start
#设置开机启动
chkconfig docker on
如果启动失败,查看日志
tail -200f /var/log/messages
Error starting daemon: SELinux is not supported with the overlay2 graph driver on this kernel. Either boot into a newer kernel or disable selinux in docker (--selinux-enabled=false)
修改docker配置项:
vi /etc/sysconfig/docker
设置为
OPTIONS='--selinux-enabled=false --log-driver=journald --signature-verification=false'
重新启动
systemctl restart docker
linux下安装建议是在centos7以上,首先查看系统版本
cat /etc/issue //列出版本信息
CentOS release 6.7 (Final)
uname -r //查看kernel版本
验证
docker pull httpd
docker run -d -p 80:80 httpd
docker pull redis
docker run -p 6379:6379 -d redis:latest redis-server --appendonly yes
docker exec -it oiuswerj2342 redis-cli
//到阿里云镜像仓库搜索activemq
docker search activemq
docker pull webcenter/activemq
docker run -d --name myactivemq -p 61616:61616 -p 8161:8161 webcenter/activemq:latest
//验证:8161是页面管理端口,61616是容器使用端口
docker run --privileged=true -d --name zookeeper -p 2181:2181 -d zookeeper:latest
启动容器成功后,在浏览器中验证:192.168.99.100:80是否访问成功。也可直接输入命令
如果安装不了,通过以下命令查看是否已存在,若已存在先卸载
linux卸载docker //列出安装过的包
yum list installed | grep docker //删除查询出的包
yum -y remove docker-engine.x86_64
安装curl
https://curl.haxx.se/download.html
下载解压后,配置CURL_HOME和path,path可以指定为CURL_HOME\AMD64
安装vim
进入容器内,没有vim很不方便修改文件
执行命令
apt-get update
apt-get install vim