1、重启docker 容器:
docker restart 容器ID
2、查看docker 容器里 Linux版本:
cat /etc/issue
3、docker compose中配置volumes来实现宿主机和docker容器之间的文件共享
4、查看容器配置,命令:
docker inspect helk-kibana
其中, helk-kibana 是容器的names
5、进入容器,命令:
docker exec -it helk-kibana /bin/bash
其中,helk-kibana是容器的names,或者使用容器ID。
7、查看容器日志, --tail=100只显示最后100行:
docker logs --follow --tail=100 helk-logstash
8、启动容器:
docker run -p 10.25.23.5:8888:8888 --env JUPYTER_TYPE=notebook -v $PWD/mordor-master:/opt/helk/jupyter/notebooks/mordor -it docker_helk-jupyter
其中,docker_helk-jupyter是容器的镜像。$PWD/mordor-master:/opt/helk/jupyter/notebooks/mordor是地址映射,用来共享文件夹
9、默认情况下容器可以使用的主机 CPU、内存等资源是不受限制的。
10、查看docker环境变量:
docker exec -it <CONTAINER-NAME> OR <CONTAINER-ID> env
11、docker compose修改其中一个容器的环境变量 需要修改其 compose-file。
sudo docker-compose -f <compose-file> up --build -d
参考:IP Configuration · Issue #127 · Cyb3rWard0g/HELK · GitHub
12、获取镜像
docker pull daocloud.io/ubuntu:14.04
其中,daocloud.io服务器地址,daocloud.io/ubuntu是仓库名,14.04是标签。每个标签对应一个镜像。通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。
仓库名经常以 两段式路径 形式出现,比如 jwilder/nginx-proxy
,前者往往意味着 Docker Registry 多用户环境下的用户名,后者则往往是对应的软件名。但这并非绝对,取决于所使用的具体 Docker Registry 的软件或服务。
13、查看镜像
docker images
14、创建容器并使用docker commit 定制镜像
①使用下载的镜像创建并启动容器。
sudo docker run -t -i daocloud.io/ubuntu:14.04 /bin/bash
②添加修改
在容器中添加 json 和 gem 两个应用。
③提交更新后的副本
sudo docker commit -m "Added json gem" -a "Docker Newbee" 3d6cd418247d ouruser/ubantu:v2
其中,-m
来指定提交的说明信息,跟我们使用的版本控制工具一样;-a
可以指定更新的用户信息;之后是用来创建镜像的容器的 ID;最后指定目标镜像的仓库名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。
④查看新创建的镜像
docker image ls
注:当利用 docker run
来创建容器时,执行完用户指定的应用程序后,容器会终止。 当再次使用docker start <containerID>启动容器时,容器会一直运行。 使用docker stop <containerID> 来停止该容器。当宿主机重启后,仍然可以使用docker ps -a 来查看停止的容器。重新进入该容器后,上一次退出前安装的软件依然存在。
15、查找docker镜像
docker search <镜像名>