1.ubuntu系统下载docker
apt-get install -y docker.io
#查看docker版本
docker version
2.docker 拉取镜像
#拉取ubuntu镜像或者拉取centos镜像,并创建容器,取决于你想要docker为什么系统,我需要的系统为centos
docker pull centos
docker run -i -t centos:latest /bin/bash
#docker pull ubuntu
#docker run -t -i ubuntu /bin/bash
#退出并停止容器
exit
#或者只退出容器并不停止
ctrl+p 然后ctrl+Q
#查看docker images
docker images
#查看docker运行过的容器
docker ps -a
3.docker 容器启动方式
方法1
#8924284ea7f2为容器CONTAINER ID,见截图。以下为启动ID号为8924284ea7f2,并attach调出后台容器
docker start 8924284ea7f2
docker attach 8924284ea7f2
方法2
#fervent_torvalds为容器的名字,可通过docker ps -a 查询
docker start -ai fervent_torvalds
#也可更改容器名字 docker rename fervent_torvalds MLforZ
1.centos的下载工具yum更新,以及安装wget断点下载工具
yum update
yum install wget
2.安装java,ES 5要求java1.8
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz"
tar xzf jdk-8u131-linux-x64.tar.gz
#修改java安装目录
yum install vim
vim ~/.bashrc
source ~/.bashrc
java -version
3.安装ES
下载并解压ES
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.3.0.tar.gz
tar -zxvf elasticsearch-5.3.0.tar.gz
ES不能使用root用户启动,所以创建普通用户es,并给予操作ES安装目录的权限
groupadd es
useradd es -g es -p es
passwd es
chown -R es:es elasticsearch-5.3.0
进入es账户,启动es
su es
cd elasticsearch-5.3.0/bin/
./elasticsearch
Note:如果ES需要外部非localhost连接,需要修改配置文件的IP
#在docker直接查看/etc/hosts文件
vim /etc/hosts
#结果如下,可知ip为172.17.0.4:
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.4 8924284ea7f2
vim elasticsearch.yml
#修改elasticsearch.yml文件中IP和端口号,其中172.17.0.4为上一步骤从/etc/hosts查看得到
network.host: 172.17.0.4
http.port: 9200
#然后用普通用户es重启ES,就可以外部访问啦
把容器制作成images镜像(名字不能有大写字母,会出现)
docker commit 8924284ea7f2 elasticsearch:latest
首先到https://hub.docker.com/account/signup/ 创建账号,然后邮件激活后,create一个elasticsearch的仓库,此处我的账户名为xmojiao,新建的仓库名为elasticsearch。
接着在命令行测试登录
docker login
#然后输入docker hub的用户名和您的密码,登录成功出现Login Successed
给新创建的镜像打上tag,并push到仓库中,其中xmojiao为docker hub账户名字,elasticsearch为新建的仓库名字,latest为tag.
docker tag d0cb7231d5d6 xmojiao/elasticsearch:latest
docker push xmojiao/elasticsearch:latest
1.退出容器
退出时,使用[ctrl + D],这样会结束docker当前线程,容器结束,可以使用[ctrl + P][ctrl + Q]退出而不终止容器运行
2.批量删除已经停止的容器,在运行的不会被删除
长期操作导致大量的容器堆积,需要对这些没有用的容器进行批量删除
Docker rm `docker ps -a |awk '{print $1}' | grep [0-9a-z]`
3.备用命令
systemctl start docker
systemctl enable docker
apt-get install -y febootstrap
4.后续使用 docker
docker ps -a
#发现名字为MLforZ的容器状态为exctied(0)即为已停止
docker images
docker start -ai MLforZ
#打开此容器但是如果需要此容器后台启动,退出时需要使用快捷键ctrl+p ctrl+q,再次使用docker ps -a,发现状态没有exctied(0)即为后台在运行