docker pull 下载镜像
docker run -it -name=容器名(自定义) 镜像名 /bin/bash #启动并进入当前容器
Docker run -di —name=容器名 镜像名。 #后台创建并启动容器
docker ps 查看运行的容器
docker ps -a 查看所有容器
docker start/stop 容器id/容器名 #启动容器或者关闭容器
Docker cp 文件地址 容器名:容器绝对目录地址 #复制文件到容器
Docker cp 容器名:容器文件绝对地址 要复制到的目录 #复制容器文件到外部
Docker run -di -v 主机目录:容器目录 —name=容器名 镜像名 #启动并共享主机目录给容器
docker exec -it 容器名 容器文件目录
Docker inspect 容器名称 #查看容器网卡等信息
#查看容器网段
docker inspect —format=‘{{.NetworkSettings.IPAddress}}’ 容器名称
#l列出网段
docker network ls
#自定义网段,自定义网段目的是为了保证容器之间通信,如果docker重启,不自定义的话,各容器ip会变化,导致配置失效,(吃过亏)而docker不支持vi,
所以一般固定网段或用—link(不是很擅长),也可以把相关配置抽出来做映射,但依旧麻烦
docker network create --subnet=172.18.0.0/16 mynet # mynet为网段名
#创建容器
docker run -itd --name my-centos --network mynet --ip 172.18.0.2 centos8 /bin/bash #关键是–network 和 —-ip,其他的不重要
docker run --name myMysql -p 3306(容器端口):3306 (数据库端口)「端口映射」-e MYSQL_ROOT_PASSWORD=123456 mysql(镜像名)。 启动mysql,无外引用地址,不建议数据库用,删容器时数据会丢失
docker run --name test_mysql -p 33306:3306 -v /mydata/mysql/log:/var/log/mysql -
v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql -e
MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 将mysql默认的相关地址映射到本地
docker run -di -p 6379:6379 --restart always -v
/usr/local/redis/conf/redis.conf:/etc/redis/redis.conf -v
/usr/local/redis/data:/data --name myredis redis redis-server
/etc/redis/redis.conf --appendonly yes redis挂载式安装
#镜像打包
docker save -o 包名.tar 镜像名
#容器打包成镜像
docker commit 容器名 镜像名
#镜像加载
docker load -i 包名.tar
自定义镜像
vim Dockerfile
#依赖镜像名称和ID
FROM centos:7
#指定镜像创建者信息
MAINTAINER Roc
#切换工作目录
WORKDIR /usr
RUN mkdir /usr/local/java
#ADD 是相对路径jar,把java添加到容器中
ADD jdk-8u171-linux-x64.tar.gz /usr/local/java/
#配置java环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_171
ENV JRE_HOME $JAVA_HOME/ere
ENV CLASSPATH
J
A
V
A
H
O
M
E
/
l
i
b
/
d
t
.
j
a
r
:
JAVA_HOME/lib/dt.jar:
JAVAHOME/lib/dt.jar:JAVA_HOME/lib/tools.jar:
J
R
E
H
O
M
E
/
l
i
b
:
JRE_HOME/lib:
JREHOME/lib:CLASSPATH ENV PATH
J
A
V
A
H
O
M
E
/
b
i
n
:
JAVA_HOME/bin:
JAVAHOME/bin:PATH
#构建镜像
docker build -t=‘jdk1.8’
查看镜像
docker images
docker run d
-e MODE=standalone
-e SPRING_DATASOURCE_PLATFORM=mysql
-e MYSQL_SERVICE_HOST=172.17.0.2
-e MYSQL_SERVICE_PORT=3306
-e MYSQL_SERVICE_USER=root
-e MYSQL_SERVICE_PASSWORD=www
-e MYSQL_SERVICE_DB_NAME=nacos
-v /mydata/nacos/logs:/home/nacos/logs
-p 8848:8848
—restart=always
—name nacos
nacos/nacosserver
docker run name elasticsearch p 9200:9200 p 9300:9300 \
—restart=always
-e “discovery.type=singlenode”
-e ES_JAVA_OPTS=“-Xms1024m -Xmx1024m”
-v /Users/www/mydata/elasticsearch/confg/elasticsearch.yml:/usr/share/elasticsearch/confg/elasticsearch.yml
-v /Users/www/mydata/elasticsearch/data:/usr/share/elasticsearch/data
-v /Users/www/mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins
-d elasticsearch:7.10.1