在服务器中docker 的安装及其下载其他镜像(minio)
主要命令引自 https://www.cnblogs.com/daijf/p/13604854.html
1.启动minio容器时的参数解释
--restart=always #当 Docker 重启时,容器自动启动,不加则不能自动启动
-d #后台运行容器,并返回容器ID
-p #指定端口映射,格式为:主机(宿主)端口:容器端口
--name #--name="nginx-lb": 为容器指定一个名称
-e #-e 设置环境变量
-v #挂载
2.建好挂载的文件夹
[root@localhost /]# mkdir -p /data/docker/minio
[root@localhost /]# ls
bin data etc lib media opt root sbin sys usr
boot dev home lib64 mnt proc run srv tmp var
[root@localhost minio]# mkdir data
[root@localhost minio]# mkdir config
3.启动minio命令:
[root@localhost /]# docker run -p 9000:9000 --name minio \
-d --restart=always \
-e MINIO_ACCESS_KEY=minio \
-e MINIO_SECRET_KEY=minio@321 \
-v /data/docker/minio/data:/data \
-v /data/docker/minio/config:/root/.minio \
minio/minio server /data
注意点:想吐 ,我没百度具体原因,之前密码随便设置admin 发现一直不可以访问!!!然后研究很久,发现密码设置复杂点就可以🤮
**
docker启动mariadb:
**
1、搜索mariadb镜像
docker search mariadb
2、下载docker镜像
docker pull docker.io/mariadb
3、查看本地已有的所有镜像
docker images
4、建一个目录作为和容器的映射目录
mkdir -p /data/mariadb/data (mkdir -p)建立多层目录
5、启动mariad镜像
docker run --name mariadb -p 3306:3306 -e MYSQL_ROOT_PASSWORD=输入数据库root用户的密码 -v /data/mariadb/data:/var/lib/mysql -d docker.io/mariadb
--name启动容器设置容器名称为mariadb
-p设置容器的3306端口映射到主机3306端口
-e MYSQL_ROOT_PASSWORD设置环境变量数据库root用户密码为输入数据库root用户的密码
-v设置容器目录/var/lib/mysql映射到本地目录/data/mariadb/data
-d后台运行容器mariadb并返回容器id
6、查看运行容器
docker ps -a
7、容器自启动设置
docker container update --restart=always 容器id 修改容器为自启动
**
docker启动jdk
**
1.获取java镜像:
docker pull java
2.启动java镜像:
docker run -d -it --name java java
3.参数意义:
其中,–name后面的“java”是为容器指定了一个别名,而最后的那个“java”指的是下载镜像时的名称。
命令以及参数的含义:
run:启动一个镜像容器
-d:指定容器运行于后台
-it:-i 和 -t 的缩写;
-i:以交互模式运行容器,通常与 -t 同时使用
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用
–name:指定容器名字,后续可以通过名字进行容器管理
4.注意点:如果我们要访问jdk版本,在容器外部访问就会报错! 这时候我们需要进入docker里面
一共有两种方式:
第一:使用exec容器别名进入容器或通过容器ID进入容器:
docker exec -it java /bin/bash
docker exec -it 91 /bin/bash
第二:使用attach进入容器
docker attach 91
两种方式的区别:
1.docker attach存在的问题是:当多个窗口同时attach到同一个容器时,所有的窗口都会同步的显示,假如其中的一个窗口发生阻塞时,其它的窗口也会阻塞,docker attach命令可以说是最不方便的进入后台docker容器的方法
使用自带命令docker exec登陆容器
docker exec和docker attach是Docker的原生方法,大多数情况下就使用这两种命令登陆容器。docker exec命令是在docker1.3之后出现的,比docker attach命令更加方便
2.你会发现通过attach进入容器的话,当使用exit退出容器的时候,对应的容器也停止运行了,所以在生产环境中很少使用。
如果是通过 attach 进入的容器,在退出容器的时候,如果不想让容器停止运行的话,就不能使用exit命令或者Ctrl+D快捷键的形式退出,而是使用 Ctrl + P + Q 组合键退出容器。
如果是通过 exec 命令进入的容器,在退出容器的时候,就可以使用exit或者Ctrl+D快捷键退出容器,同时容器不会停止运行,这也是exec与attach的最大区别。当然,你也可以使用Ctrl + P + Q 组合键退出容器,容器一样不会停止运行。
停止容器
通过 docker stop (容器ID | 容器别名) 的命令,可以停止正在运行状态的容器:
docker stop java
关于防火墙的命令:
1.查看防火墙是否开启
service iptables status
2.关闭防火墙
service iptables stop
3.开启防火墙
service iptables start