1、linux
安装docker
yum -y install docker-io
启动docker
service docker start
docker IP查询(只限linux使用)
docker inspect --format='{{.NetworkSettings.IPAddress}}' $(docker ps -a -q)
查看启动的程序
ps -ef
查询内存使用情况
free -m
开机自启
systemctl enable docker
重启次数
docker inspect -f "{{ .RestartCount }}" mysql
最后一次启动时间
docker inspect -f "{{ .State.StartedAt }}" mysql
查看容器的详细信息
docker inspect 4b298a8f36ec
进入正在运行的容器
docker exec -i -t nacos /bin/bash
docker exec -it mongometeor sh
删除已停止的容器
docker container prune
docker 日志输出
docker logs datacenter
docker logs -f -t --tail 100 datacenter
获取返回参数
curl 127.0.0.1:8080/info
(1)mysql
搜索mysql镜像
docker search mysql
安装mysql5.7镜像
docker pull mysql:5.7
启动mysql
docker run --name mysql -e TZ="Asia/Shanghai" -e MYSQL_ROOT_PASSWORD=root -p 3306:3306 -d mysql:5.7
(2) nacos
docker run --name nacos -e MODE=standalone -p 8848:8848 nacos/nacos-server:latest
nacos 目录授权
docker run --name nacos -e MODE=standalone -p 8848:8848 -v F:/nacos:/home/nacos/logs nacos/nacos-server:latest
(3) rabbitmq
安装rabbitmq镜像
docker pull rabbitmq:latest
启动rabbitmq
docker run --name rabbitmq --restart=always -p 15672:15672 -p 5672:5672 rabbitmq:latest
(4)docker镜像制作
maven 打包镜像依赖
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.4.11</version>
<configuration>
<imageName>${docker.image.prefix}/${project.artifactId}</imageName>
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
maven 打包镜像
mvn clean package docker:build
创建Dockerfile
FROM openjdk
MAINTAINER jbyjby 3299216138@qq.com
VOLUME /var/lib/demo
ADD demo-0.0.1-SNAPSHOT.jar app.jar
RUN sh -c 'touch /app.jar'
EXPOSE $PORT_TO_EXPOSE 8080
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
上传镜像并启动
docker build -t demo . && docker run -p 8080:8080 --name demo demo
(5)安装并启动socat(可远程访问)
docker run --name socat -d -v /var/run/docker.sock:/var/run/docker.sock -p 2375:2375 bobrik/socat TCP4-LISTEN:2375,fork,reuseaddr UNIX-CONNECT:/var/run/docker.sock
(6)ubuntu安装
docker run -ti ubuntu bash
(7)mongo 安装
docker pull mongo
docker exec -it mongometeor /bin/bash
mongo
use admin
db.createUser({user: "gyj",pwd: "secret",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
db.auth("gyj","secret")
(8)桥接
docker network rm application
docker network create --subnet=172.20.0.0/16 application