启动docker服务
service docker start
重启docker服务
service docker restart
Docker镜像
搜索镜像
docker search tomcat
下载镜像
docker pull tomcat
自定义镜像
1、docker build
使用docker build创建镜像需要编写Dockerfile.
步骤:
编写自己的Dcokerfile,运行docker build 命令打包镜像
2、docker commit
docker commit 是往版本控制系统里提交一次变更。使用这种方式制作镜像,本质上是运行一个基础镜像,然后在基础镜像上进行软件安装和修改。最后再将改动提交到版本系统中。
docker容器管理
根据镜像启动容器
docker-compose -f /opt/oso.yml up -d jenkins
查看所有启动的容器
docker ps
docker ps -a
启动容器
docker start container_id
停止容器
docker stop container_id/container_name
删除容器
docker rm container_id/container_name
查看WEB应用程序日志
docker logs -f [ID或者名字] 可以查看容器内部的标准输出。
容器下执行shell命令
docker exec -it container_id /bin/sh
docker exec -it container_id /bin/sh /root/xxx.sh
查看容器挂载磁盘映射信息
docker inspect container_id| grep Mounts -A 20
运行镜像为容器
docker run --name eureka-server -p 8661:8661 -d mydocker/eureka-server-docker
开启挂载权限
tomcat
docker run --name tomcat -p 8080:8080 --privileged=true -v $PWD/webapps:/usr/local/tomcat/webapps -d tomcat
命令解释:-p [port]:[port] 端口映射,前一个port是宿主机端口,后一个port是容器端口
-v [dir]:[dir] 磁盘挂载,前一个dir是宿主机的磁盘目录,后一个dir是容器的磁盘目录,$PWD是取当前目录变量值,PWD一定要大写
Jar
docker run --name eureka-client -p 8662:8662 -v $PWD/eureka-client-docker.jar:/app.jar -d mydocker/eureka-client-docker
Docker Link
我弄了一整天也是一直注册不进去,后来又搜了搜docker进程间通信,发现一个方法, eureka-server部署的时候给一个名字: docker run --name eureka-server -p 8761:8761 server-hi中部署使用link参数 docker run --link eureka-server(server部署时赋予的名字):eureka-server(配置中写的地址) ...... 注册不进去的可以试试。
docker run --name eureka-client --link eureka-server:eureka-server -p 8662:8662 -v $PWD/eureka-client-docker.jar:/app.jar -d mydocker/eureka-client-docker
docker传多个同类型参数