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
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux系统上的Docker镜像是一种用于在Docker容器中运行Linux操作系统的映像文件。Docker镜像是由Docker引擎构建的,可以包含完整的操作系统、文件系统、应用程序和依赖项。这些镜像可以通过Docker Hub或其他镜像仓库获取。 引用中给出了一个示例命令,它将名为"ubuntu.slim:latest"的镜像打标签为"pivotalcloud/pivotal-ubuntu:18.04",这意味着在Docker中可以使用"pivotalcloud/pivotal-ubuntu:18.04"来引用该镜像。 引用提到了USTC(中国科学技术大学)提供的Docker镜像加速器。USTC是一个老牌的Linux镜像服务提供者,他们提供高速的Docker镜像下载和加速服务,并且无需注册即可使用。 引用介绍了使用docker-slim构建镜像的命令示例。docker-slim是一个用于优化和精简Docker镜像大小的工具,可以通过执行"docker-slim build"命令来构建基于指定镜像的精简版本。 综上所述,Linux系统上的Docker镜像可以通过各种方式获得,包括自行构建、使用镜像加速器等。可以根据具体需求选择合适的镜像,并可以使用工具如docker-slim来进行镜像的优化和精简。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Linux系统环境基于Docker搭建系统基础镜像](https://blog.csdn.net/u012103898/article/details/103897551)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [linux安装和启动docker](https://blog.csdn.net/u010689849/article/details/88560045)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值