linux系统下使用docker镜像并安装容器

文章目录

一、docker安装及配置

1.操作文档

官方链接

2.步骤

2.1 卸载旧版本

 $ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2.2 设置仓库

$ sudo yum install -y yum-utils
 sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

2.3 安装新docker

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

2.3 启动docker

sudo systemctl start docker

注:

  • 查看docker版本:sudo docker -v
  • docker启动容器命令:sudo docker run hello-world
  • 查看镜像:sudo docker images
  • 查看所有镜像: sudo docker images -a

2.4 设置docker开机自启动

$ sudo systemctl enable docker

2.5 卸载docker

$ sudo yum remove docker-ce docker-ce-cli containerd.io

#不会自动卸载容器镜像,要手动卸载
$ sudo rm -rf /var/lib/docker
$ sudo rm -rf /var/lib/containerd

2.6 为docker配置镜像加速

dockerhub为国外网站,下载镜像时会遇到速度慢甚至连不上的问题,故配置镜像加速,此加速由阿里云提供。

  1. 登陆阿里云
  2. 进入工作台,点击左侧菜单栏,选择产品与服务–容器服务–容器镜像服务
  3. 镜像工具–镜像加速器,选择CentOS
  4. 依次执行操作文档的几条命令

二、mysql安装及配置

1.镜像选择

dockerhub选择mysql地址

2.下拉安装

#最新版本(:latest可省略)
$ docker pull mysql:latest

#指定版本
$ docker pull mysql:5.7

3.创建实例并启动

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

参数说明:

  • -p 3306:3306:将容器的3306端口映射到主机的3306端口
  • -v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂载到主机
  • -v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
  • -v /mydata/mysql/data:/var/lib/mysql:将配置文件夹挂载到主机
  • -e MYSQL_ROOT_PASSWORD=root:初始化root用户密码为root

注:查看mysql位置命令:whereis mysql

4.设置mysql的配置文件

$ vi /mydata/mysql/conf/my.cnf

#添加如下配置
[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

#mysql在linux系统下,表名是默认区分大小写的
#查看是否区分:show variables like '%case_table%';
#lower_case_table_names值为0,区分大小写;值为1,不区分大小写。默认为0。
lower_case_table_names=1

5.重启mysql

$ docker restart mysql

此时配置文件已生效,可查看配置文件内容:

$ cd /etc/mysql
$ cat my.cnf

6.设置服务器重启自启动mysql

docker update mysql --restart=always

三、redis安装及配置

1.镜像选择

dockerhub选择redis地址

2.下拉安装

#最新版本
$ docker pull redis

3.创建实例并启动

首先要在主机上创建配置文件的映射地址

$ mkdir -p /mydata/redis/conf
$ touch /mydata/redis/conf/redis.conf

创建实例

$ docker run -p 6379:6379 --name redis -v /mydata/redis/data:data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf

4.使用redis镜像执行redis-cli命令连接

$ docker exec -it redis redis-cli

5.数据持久化

修改配置文件内容:

$ vi /mydata/redis/conf/redis.conf

#添加如下配置,启用AOF持久化方式
appendonly yes

修改完配置之后要重启redis

$ docker restart redis

6.设置服务器重启自启动redis

docker update redis --restart=always

四、nacos安装及配置

1.镜像选择

dockerhub选择nacos地址

2.下拉安装

#最新版本
$ docker pull nacos/nacos-server:latest

3.创建实例并启动

docker run --env MODE=standalone --name nacos -d -p 8848:8848 nacos/nacos-server

默认的账号和密码是 nacos/nacos

五、java安装及配置

1.镜像选择

dockerhub选择openjdk地址

2.下拉安装

#最新版本
$ docker pull openjdk:slim-buster

3.查看java版本

$ java -version

4.添加环境变量

$ cd /etc/profile.d
$ touch java.sh
$ ls |grep java

$ vi java.sh

#根据jdk安装位置,添加配置
JAVA_HOME=/home/Serv/jdk/jdk1.8.0_121
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

#使配置生效
$ source /etc/profile.d/java.sh
$ env

#测试
$ java -version

六、nginx安装及配置

1.镜像选择

dockerhub选择nginx地址

2.下拉安装

docker pull nginx:latest
docker update nginx --restart=always

3.启动实例

docker run --name nginx -p 8001:80 -d nginx

4.容器映射到本地

4.1 先在本地创建文件夹

mkdir /mydata/nginx/conf
mkdir /mydata/nginx/conf.d
mkdir /mydata/nginx/logs
mkdir /mydata/nginx/html

4.2 将容器内的配置文件拷贝到本机

#2724082f0ccd是nginx容器的id
docker cp 2724082f0ccd:/etc/nginx/nginx.conf /mydata/nginx/conf/
docker cp 2724082f0ccd:/etc/nginx/conf.d/default.conf /mydata/nginx/conf.d/

5.配置文件修改,可根据需要进行修改

6.停止并删除实例

docker stop nginx
docker rm nginx

7.创建并启动实例

docker run --name nginx -p 8001:80 \
-v /mydata/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/conf.d:/etc/nginx/conf.d \
-d nginx

#配置容器开机自启动
docker update nginx --restart=always
    原文作者:Alvis 一昂
    原文地址: https://blog.csdn.net/weixin_44916936/article/details/123876893
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞