装置Docker容器

Docker 官网装置地址
https://docs.docker.com/engin...

第一步:装置yum-utils(治理repository及扩大包的工具,可提供yum操作性能)

sudo yum install -y yum-utils

  1. sudo让普通用户具备一般治理元的权限执行操作
  2. Yum是一个RedHat以及CentOS中的Shell软件包管理器
第二步:设置docker 装置镜像

sudo yum-config-manager --add-repo https://download.docker.com/l...

第三步:装置docker-ce ( CE- Community Edition是社区版)

sudo yum install docker-ce docker-ce-cli containerd.io

第四步:启动docker (systemclt指令用于启动、敞开服务等)

sudo systemctl start docker

第五步:设置docker自启动(操作系统启动时docker也启动)

FAQ:
运行yum时呈现/var/run/yum.pid已被锁定,PID为xxxx的另一个程序正在运行的问题解决

删除文件后再次运行yum
rm -f /var/run/yum.pid

Docker 减速设计

  1. 创立目录: sudo mkdir -p /etc/docker
  2. 镜像设置: sudo tee /etc/docker/daemon.json <<-'EOF'
    {
    "registry-mirrors": ["https://ar2qkqym.mirror.aliyuncs.com"]
    }
    EOF
  3. 从新加载配置: sudo systemctl daemon-reload
  4. 重启docker: sudo systemctl restart docker

    装置JDK软件

镜像形式装置

第一步:拉取镜像(从hub.docker.com)
docker pull benwang6/tedu-jdk
第二步:查看镜像
docker images
第三步:测试-从镜像运行启动容器,在容器中运行java -jar
docker run -d -p 9411:9411 -v /root/libs/sca/:/sca --entrypoint java benwang6/tedu-jdk -jar /sca/zipkin-server-2.23.2-exec.jar

docker在后盾(-d)启动运行一个容器(过程),并将/root/libs/sca目录中的资源挂载(-v)到/sca挂载点,将容器端口9411映射到宿主机端口9411,而后通过java 指令执行挂在点资源(其中zipkin-server-2.23.2-exec.jar文件为咱们要执行的挂载点文件),--entrypoint的含意为笼罩镜像中写的entrypoint选项(这个镜像文件中有写entrypoint选项),注--entrypoint指令的地位
本人制作镜像

第一步:拉取centos空的镜像(制作镜像时须要有一个空的centos:7镜像)
docker pull centos:7
第二步:创立目录并在目录中间接通过vim编辑此文件(通过mkdir指令实现)
mkdir jdk
第三步:在jdk目录下创立通过vim 指令编辑Dockerfile文件(文件不存在主动创立)
vim Dockerfile #留神文件的大小写(制作镜像时有严格标准)

文件内容如下:FROM centos:7ADD jdk-8u51-linux-x64.tar.gz /usr/local/dockerENV JAVA_HOME=/usr/local/docker/jdk1.8.0_51 \    PATH=/usr/local/docker/jdk1.8.0_51/bin:$PATHCMD ["bash"]

保留退出。
第三步:构建镜像(-t示意为镜像起个名字,名字前面的点示意当前目录)
docker build -t jdk:8 .
第四步:查看构建的镜像
docker images
第五步:测试镜像文件
docker run -d -p 9411:9411 -v /root/libs/sca/:/sca jdk:8 java -jar /sca/zipkin-server-2.23.2-exec.jar

第六步:通过如下指令查看服务是否已启动
docker ps
第七步:保留镜像并起各名字 (可选,如果要将镜像传给他人能够间接上面的操作)
docker save jdk:8 | gzip>linux-jdk8.gz
接管并执行load
docker load -i linux-jdk8.gz
FAQ:
 如何看docker中镜像? docker images
 如何删除docker中镜像?docker image rm 镜像名或imageId
 如何加载本地镜像? docker load –i 镜像名
 如何启动容器?docker run 。。。。。
 如何查看正在运行的容器?docker ps
 如何查看所有容器?(蕴含启动失败和进行容器)?docker ps –a
 如何进行正在运行容器? docker stop 容器id
 如何重启容器? docker restart 容器id
 如何删除处于终止状态的容器? docker container prune
 如何删除处于运行状态的容器(不举荐)? docker container rm –f 容器id
 如何查问启动容器的日志?docker container logs 容器id
 如何查看容器详细信息? docker container inspect 容器id
查看docker 容器选项信息? docker contianer

间接装置形式

:上传JDK安装包
:解压JDK文件

tar -xvf jdk-7u51-linux-x64.tar.gz

:配置环境变量
阐明:批改Linux零碎中环境变量须要批改/etc/profile文件
命令:vim /etc/profile
配置文件变量

#set java envJAVA_HOME=/usr/local/src/java/jdk1.7.0_51JAVA_BIN=/usr/local/src/java/jdk1.7.0_51/binPATH=$JAVA_HOME/bin:$PATHCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOME JAVA_BIN PATH CLASSPATH

:环境变量失效:

source /etc/profile

:检测jdk:
java -version

装置Database软件

装置MySql数据库

第一步:在hub.docker.com上搜寻mysql镜像
第二步:拉取指定版本的mysql

sudo docker pull mysql:8.0.23

第三步:查看mysql镜像

sudo docker images

第四步:启动运行mysql镜像 (docker run 用于启动一个容器)

sudo docker run -p 3306:3306 --name mysql \-v /usr/local/docker/mysql/mysql-files:/var/lib/mysql-files \-v /usr/local/docker/mysql/conf:/etc/mysql \-v /usr/local/docker/mysql/logs:/var/log/mysql \-v /usr/local/docker/mysql/data:/var/lib/mysql \-e MYSQL_ROOT_PASSWORD=root \-d mysql:8.0.23

如果装置过程中失败了,则可通过docker ps -a 查看以前的容器,如果已存在,则通过docker rm 镜像id 删除再重新安装即可

第五步:启动mysql

docker start mysql

第六步:查看docker启动的服务

docker ps

第七步:进入容器 (退出容器用exit)

sudo docker exec -it mysql bash

第八步:登陆

mysql -uroot -p

第九步:设置mysql开机自启动(可选)

docker update mysql --restart=always

FAQ
重启mysql:

 docker restart mysql

查看mysql装置门路:

  whereis mysql

创立mysql账户并为其设置权限

  create user ‘tony’@’%’identified by ‘tony’;  grant all on *.* to ‘tony’@‘%’;

敞开防火墙:
sudo systemctl stop firewalld.service
重启docker:
sudo systemctl restart docker
######装置Redis 内存数据库
第一步:下载镜像文件

 docker pull redis 

第二步:创立redis实例并启动

创立redis配置文件目录:mkdir -p /usr/local/docker/redis/conf在配置文件录下创立redis.conf配置文件(因为redis镜像中这个redis.conf是一个目录所以要先创立一个这个配置文件,否在咱们本地挂载点也会变成一个目录):touch /usr/local/docker/redis/conf/redis.conf
 sudo docker run -p 6379:6379 --name redis \-v /usr/local/docker/redis/data:/data \-v /usr/local/docker/redis/conf/redis.conf:/etc/redis/redis.conf \-d redis redis-server /etc/redis/redis.conf 

第三步:查看正在运行的过程

docker ps

第四步:控制台间接连贯redis测试

docker exec -it redis bash

第五步:检测redis 版本

Redis-server –v

或者

redis-cli -v

第五步:登录redis(默认不须要明码)

redis-cli

或者

docker exec -it redis redis-cli

FAQ
进行redis:
docker stop redis
启动redis:
docker start redis
重启redis:
docker restart redis
查看redis版本:
docker exec -it redis redis-server -v

装置分布式中间件

装置Ngnix代理
  1. docker pull nginx:latest
  2. docker images
  3. docker run --name nginx -d nginx
    检测装置的内容docker exec nginx ls -l /etc/nginx

第四步:拷贝装置好的配置文件

docker cp -a nginx:/etc/nginx /usr/local/docker/nginx

这里是将docker中的nginx复制到宿主机的nginx目录

第五步:强制卸载刚刚装置的nginx

docker rm -f nginx

第六步:启动nginx容器,运行nginx镜像

sudo docker run -p 80:80 --restart always --name nginx \-v /usr/local/docker/nginx/:/etc/nginx/ \-d nginx