centos配置docker环境

news2024/11/24 4:44:11

CentOS系统更换软件安装源

yum默认链接的还是国外的镜像,速度相对不理想,配置成国内的镜像会快很多,这里以阿里镜像为例进行配置:
首先进行更新:

yum update

base源
第一步:备份你的原镜像文件,以免出错后可以恢复。

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

第二步:下载新的CentOS-Base.repo 到/etc/yum.repos.d/
CentOS 7

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

epel源
Epel 7

wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo

第三步:运行yum makecache生成缓存

yum clean all
yum makecache

安装 Docker 依赖

yum install -y yum-utils device-mapper-persistent-data lvm2

依赖下载源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装 docker

yum makecache fast && yum -y install docker-ce
  • 运行docker的操作系统

  • 有大家常用的 Microsoft Windows 系列操作系统、Linux 发行版和 macOS 系统。Windows 和 macOS 上面运行的 Docker都是通过 Linux 虚拟机的方式运行。

  • 下载 Docker 镜像的时候,默认会访问 Docker 网站,而 Docker 网站是在国外部署的,距离比较远下载速度特别慢。可以通过设置加速器的方式来加速 Docker 镜像的下载。

  • 启动:systemctl start docker

  • 重启:systemctl restart docker

  • 开机自启动:systemctl restart docker

  • 运行状态:systemctl status docker

  • 配置 registry-mirrors:
    vim /etc/docker/daemon.json
    {
    “registry-mirrors”: [“https://mqxz7mjm.mirror.aliyuncs.com”],
    }
    {
    “registry-mirrors”: [“https://registry.docker-cn.com”]
    }
    systemctl daemon-reload
    systemctl restart docker

  • docker info
    Server Version: 19.03.12 #docker服务器版本
    Kernel Version: 3.10.0-1127.el7.x86_64 #linux内核版本
    Operating System: CentOS Linux 7 (Core) #linux操作系统
    OSType: linux #操作系统类型
    Docker Root Dir: /var/lib/docker #docker根目录
    Registry: https://index.docker.io/v1/ #镜像仓库
    Live Restore Enabled: false

-v ${HOME} 用户的主目录

docker配置数据库

MySQL 是最流行的开源关系型数据库。凭借其可靠性、易用性和性能,MySQL 已成为 Web 应用程序的数据库优先选择。

–character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

  • 配置8.0.26版本
mkdir -p /root/docker/mysql8_home
chmod 777 /root/docker/mysql8_home
docker run -d -p 3306:3306 --name mysql2 --privileged=true -v /root/docker/mysql8_home/mysql:/var/lib/mysql -v /root/docker/mysql8_home/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0.26 --lower-case-table-names=1
docker run -d -p 3306:3306 --name mysql2 --privileged=true -v /root/docker/mysql8_home/mysql:/var/lib/mysql -v /root/docker/mysql8_home/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7 --lower-case-table-names=1
  • 配置5.7版本
mkdir -p /root/docker/mysql_home
chmod 777 /root/docker/mysql_home
docker run -d -p 3307:3306 --name mysql1 --privileged=true -v /root/docker/mysql_home/mysql:/var/lib/mysql -v /root/docker/mysql_home/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
docker run -d -p 3307:3306 --name mysql1 --privileged=true -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

MySQL默认的数据存储目录 /var/lib/mysql
MySQL(5.7.19)的默认配置文件是 /etc/mysql/my.cnf 文件 建议向 /etc/mysql/conf.d 目录中创建 .cnf 文件

  • –privileged=true container内的root拥有真正的root权限

  • 查看数据库

show  variables like 'lower_case_table_names';
  • 连接数据库
docker exec -it mysql1 bash
docker exec -it mysql2 bash
mysql -u root -p  连接Mysql
123456
  • 使用数据库
use mysql;
  • 添加用户
alter user 'root'@'%' identified by '123456'; 增加新用户
alter user 'root'@'%' identified with mysql_native_password by '123456'; 增加新用户
  • 授权
grant all privileges on *.* to root@"%" identified by '123456' with grant option;
grant all privileges on *.* to 'root'@'%';
  • 刷新权限
flush privileges;
  • 数据库常用命令
create database my_data; 创建数据库
show databases; 查看所有数据库
drop database my_data; 删除数据库
use my_data; 连接数据库
select version(); 显示MYSQL的版本
select now(); 显示当前时间
创建数据表
create table MyClass(id int(4) not null primary key auto_increment,name char(20) not null,sex int(4) not null default '0',degree double(16,2));
show full columns from MyClass; 查询一张表的所有字段信息
show tables; 查看所有表
drop table MyClass; 删除数据表
insert into MyClass values(1,'Tom',20,96.45),(2,'Joan',21,82.99), (3,'Wang',22,96.59);  表插入数据
insert into MyClass values(1,'Tom',20,96.45);  表插入数据
select * from MyClass order by id limit 0,2; 查询表中的数据
delete from MyClass where id=1; 删除表中数据
update MyClass set name='Mary' where id=1; 修改表中数据
alter table MyClass add passtest int(4) default '0'; 增加字段
rename table MyClass to YouClass; 修改表名
exit

部署mariadb

docker pull bitnami/mariadb:latest
docker pull bitnami/testlink:latest
mkdir -p /root/docker/testlink_home
chmod 777 /root/docker/testlink_home

部署数据库

docker network rm test_link
docker network create test_link
docker run -d --name mariadb --net test_link --restart=always --privileged=true -v /root/docker/testlink_home/mariadb:/bitnami -e MARIADB_ROOT_PASSWORD=mariadb -e MARIADB_USER=bn_testlink -e MARIADB_PASSWORD=bn_testlink -e MARIADB_DATABASE=bitnami_testlink bitnami/mariadb
  • -d:后台运行
    –name:设置别名
    -e:设置参数
    -e MARIADB_ROOT_PASSWORD=mariadb:设置管理员密码
    -e MARIADB_USER=bn_testlink:创建一个用户
    -e MARIADB_PASSWORD=bn_testlink:用户密码
    -e MARIADB_DATABASE=bitnami_testlink:新建数据库
    –net testlink:指定网络
    -v ${PWD}/mariadb:/bitnami bitnami/mariadb:10.3.22:挂载目录

部署 Testlink

docker run -d -p 8280:8080 -p 8443:8443 --name testlink --net test_link --restart=always --privileged=true -v /root/docker/testlink_home/testlink:/bitnami -e TESTLINK_DATABASE_USER=bn_testlink -e TESTLINK_DATABASE_PASSWORD=bn_testlink -e TESTLINK_DATABASE_NAME=bitnami_testlink bitnami/testlink
  • -p 80:80:http协议端口
    -p 443:443:https协议端口
    –name testlink :设置别名
    -e:设置参数
    -e TESTLINK_DATABASE_USER=bn_testlink:传入数据库用户
    -e TESTLINK_DATABASE_PASSWORD=bn_testlink:传入数据库密码
    -e TESTLINK_DATABASE_NAME=bitnami_testlink:传入数据库名
    –net testlink:指定网络和数据库一个网络下
    -v ${PWD}/testlink:/bitnami :挂载一个目录
    bitnami/testlink:1.9.20:镜像的版本信息和名字

访问

浏览器内访问:http://你的IP地址:端口

  • 8080 和 8443 为 HTTP/HTTPS 访问端口。
  • 默认用户:user,默认密码:bitnami

配置java环境

yum install java
which java
ls -lr /usr/bin/java
ls -lrt /etc/alternatives/java
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.302.b08-0.el7_9.x86_64
export JRE_HOME=$JAVA_HOME/jre  
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH  
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
source /etc/profile  
echo $JAVA_HOME
which java

部署jira

docker pull 16888888/jira:v1.0
docker pull 16888888/jira_mysql:v1.0

端口映射为宿主机8181端口映射jira容器8080端口,宿主机8182端口映射MySQL容器3306端口,有端口冲突更改容器端口映射:

docker start -it -d jira_mysql:v1.0
docker start -it -d jira:v1.0
docker pull atlassian/jira-software
mkdir -p /root/docker/jira_home
chmod 777 /root/docker/jira_home
docker network rm net_jira
docker network create net_jira
docker pull mysql:5.7
docker run -d -p 3307:3306 --name mysql_jira --privileged=true --net net_jira -v /var/lib/mysql:/var/lib/mysql -v /etc/mysql/conf.d:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
vim /etc/mysql/conf.d/my.cnf
[mysqld]
sql_mode = NO_AUTO_VALUE_ON_ZERO
innodb_file_format=Barracuda
innodb_large_prefix=ON
innodb_default_row_format=DYNAMIC
character_set_server=utf8mb4
collation-server = utf8mb4_unicode_ci
default-storage-engine=INNODB
docker restart mysql_jira

docker exec -it mysql_jira bash
mysql -u root -p
123456
alter user 'root'@'localhost' identified by '123456'; 使用root登录
show variables like '%default_storage_engine%';
show variables like '%character_set_server%';
show variables like '%innodb_default_row_format%';
show variables like '%innodb_large_prefix%';
show variables like '%innodb_file_format%';
show variables like '%innodb_log_file_size%';
show variables like '%sql_mode%';
drop database jiradb; 删除数据库
create database jiradb character set utf8mb4 collate utf8mb4_bin; 创建数据库
grant select,insert,update,delete,create,drop,alter,index on jiradb.* to 'root'@'42.192.73.147' identified by '123456';
show grants for root@42.192.73.147;
flush privileges; 授权
show databases; 查看所有数据库
docker run -d -p 8069:8080 --name jira --privileged=true --net host -v /var/atlassian/application-data/jira:/var/atlassian/application-data/jira atlassian/jira-software

配置数据库驱动

yum install wget

  1. 下载驱动:
    wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.25.tar.gz
    tar -zxf mysql-connector-java-8.0.25.tar.gz
  2. 复制驱动到容器
    docker cp mysql-connector-java-8.0.25/mysql-connector-java-8.0.25.jar jira:/opt/atlassian/jira/atlassian-jira/WEB-INF/lib/
    docker cp mysql-connector-java-8.0.25/mysql-connector-java-8.0.25.jar jira:/opt/atlassian/jira/lib
  3. 重启容器:
    docker exec -it jira bash
    chmod 777 /opt/atlassian/jira/atlassian-jira/WEB-INF/lib/mysql-connector-java-8.0.25.jar
    chmod 777 /opt/atlassian/jira/lib/mysql-connector-java-8.0.25.jar
    exit
    docker restart jira
docker run -d -p 3306:3306 --name mysql_jira --restart always --privileged=true -u root -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7

docker run -d -p 8083:8083 -p 8086:8086 --name=influxdb1 --restart=always --privileged=true -u root --network grafana influxdb:1.7.10
docker run -d -p 8083:8083 -p 8086:8086 --name=influxdb1 --restart always --privileged=true -u root influxdb:1.7.10

curl -i -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE jmeter"

docker run -d -p 8080:8080 -p 50000:50000 --name jenkins1 --restart always --privileged=true -u root jenkins/jenkins

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1189543.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

常孝元宇宙·《神由都城》首场招商会圆满举办

11月4日,常孝元宇宙《神由都城》首场招商会在常州中华孝道园召开。《神由都城》招商会面向所有合伙人,全面展现常孝股份元宇宙得天独厚的线上线下相结合的模式、广阔的发展空间和优质的运营环境,以一场高规格的招商盛会,吹响常孝股份全面推进元宇宙高质量发展的奋进号角。 招商…

[鹏程杯2023]复现

SecretShare X的20个值和R的21个值已经被全部泄露,X和R都是1024bit的值,此时X总共泄露了32*20 640,于是,此时我们可以使用mt19937将其还原,还原之后,我们往前推20个1024bit的值,便可以求得A的…

华为ipsec vpn模版型(总部固定地址,其它分部无固定地址)

fw_c和fw_b配置一样 上表路由部分就是防火墙都要有默认路由指向公网 那个auto-neg如果不加,分部访问分部可能会不通。 查看 dis ike sa 此架构,总部不能主动访问分部

运行springboot时提示:源值 7 已过时,将在未来版本中删除,并且提示java.time not exist, LocaDateTime类找不到。

运行springboot时提示:源值 7 已过时,将在未来版本中删除,并且提示 java.time not exist, LocaDateTime类找不到。 解决方法: 方式一:通过IDEA修改这几个地方的JDK版本 1)打开ProjectStructure->Proj…

Java后端开发——JDBC入门实验

JDBC(Java Database Connectivity)是Java编程语言中用于与数据库建立连接并进行数据库操作的API(应用程序编程接口)。JDBC允许开发人员连接到数据库,执行各种操作(如插入、更新、删除和查询数据&#xff09…

不妨看看这招: 电销获客渠道——优质的电销数据资源

由于时间的变化,电话营销寻找客户变得越来越困难,这涉及到寻找联系潜在客户的方法。第二个原因是电话禁令相对严厉,电话营销水平参差不齐,人员流动大,导致吸引客户的成本越来越高。那么,电话营销行业的渠道…

警惕!计算机服务器中了malox勒索病毒怎么办?勒索病毒解密数据恢复

警惕!警惕!企业老板们请注意,假的malox勒索病毒出现了,不要被malox勒索病毒骗了,能减少更多的经济损失。近期,云天数据恢复中心陆续接到很多企业的求助,企业的计算机服务器遭到了malox勒索病毒攻…

解决在表格数据行赋值给表单,会出现表单输入框无法输入的情况

1 直接赋值属性的方法 会出现表单输入框无法输入的情况 handleFixUpdate(row){this.resetForm("formFixUpdate");console.log(this.formFixUpdate)this.formFixUpdate.repairId row.repairIdthis.formFixUpdate.itemId row.itemIdthis.formFixUpdate.repairMan …

RRC configured BWP

TS 38.822有UE BWP 相关能力 IE的详细介绍,如下图。 举例说明,对于UE上报bwp-SameNumerology=upto2时,根据上图中的描述,UE支持能力情况如下:每个carrier最多支持2 个UE specific RRC configured DL/UL BWPs;可以通过DCI和BWP-InactivityTimer主动切换BWP;每个carrier的…

在linux上脱离hadoop安装hbase-2.5.6集群

一、软件版本 1.1、jdk1.8 1.2、hbase 2.5.6 1.3、zookeeper 3.8.1 二、计算节点 准备三台服务器 192.168.42.139 node1 192.168.42.140 node2 192.168.42.141 node3三、配置环境 1、每台服务器都配置jdk环境变量 [rootnode1 data]# javac -version javac 1.8.0_3912、每…

Python tkinter用iconphoto方法修改窗口标题的图片

修改Python Tkinter窗口的标题图片,可以使用PhotoImage、iconphoto方法。这个方法允许你设置窗口的图标。 运行结果 代码示例如下: import tkinter as tkroot Tk()# 加载图片,记住一定是要PNG图片 icon tk.PhotoImage(filephoto\\图片.pn…

第三章 UI开发的点点滴滴

一、常用控件的使用方法 1.TextView android:gravity"center" 可选值:top、bottom、left、right、center等,可以用"|"来同时指定多个值,center表示文字在垂直和水平方向都居中 android:textSize 指定文字的大小&#…

网络安全自学手册

想自学网络安全(黑客技术)首先你得了解什么是网络安全!什么是黑客! 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全…

FreeRTOS学习笔记(二)

一、时间片调度 1、同等优先级任务轮流地享有相同的 CPU 时间(可设置), 叫时间片,在FreeRTOS中,一个时间片就等于SysTick 中断周期 /* 任务一,实现LED0每500ms翻转一次 */ void task1( void * pvParameters ) {uint32_t task1_n…

国产化精密划片机已得到国内更多厂家青睐

国产化精密划片机在近年来得到了国内许多厂家的青睐,这是因为精密划片机在工业生产中有着重要作用。这种设备主要用于高精密切割加工,适用于多种材料,包括硅、石英、氧化铝、氧化铁等。 以精密晶圆划片机为例,这种设备采用了自主研…

安全易用的文件同步程序:Syncthing | 开源日报 No.70

syncthing/syncthing Stars: 55.0k License: MPL-2.0 Syncthing 是一个持续文件同步程序,它在两台或多台计算机之间同步文件。该项目的主要功能和核心优势包括: 安全防止数据丢失抵御攻击易于使用自动化操作,仅在必要时需要用户交互适合在各…

微服务-grpc-consul-protoBuf-micro

微服务 一、微服务(microservices) 近几年,微服这个词闯入了我们的视线范围。在百度与谷歌中随便搜一搜也有几千万条的结果。那么,什么是微服务 呢?微服务的概念是怎么产生的呢? 我们就来了解一下Go语言与微服务的千丝…

「帝国风暴兵」加入 The Sandbox,推出真实的全新人物化身系列和体验!

我们很高兴宣布与流行文化中最具标志性的娱乐品牌 Shepperton 设计工作室的「帝国风暴兵」达成合作伙伴关系。这一合作标志着该科幻品牌首次进入元宇宙,让风暴兵的粉丝们以全新的方式体验「帝国风暴兵」。 在这个体验中,玩家将置身于帝国风暴兵的营地&am…

ubuntu, nvidia driver, cuda, cudnn, pytorch-gpu版本安装

文章目录 1.常用指令1.1查看cpu是intel还是amd:1.2.查看ubuntu版本1.3.查看架构1.4.查看已安装的nvidia驱动1.5.进入tty模式 2.安装ubuntu22.04 和 nvidia 驱动3.ubuntu 安装 anaconda4.安装pytorch gpu版本5.安装完整版cuda 和 cudnn6.nvidia-driver, cuda-toolkit, cudnn 1.常…

JSON——数组语法

一段JSON可能是以 ”{“ 开头 也可能仅包含一段JSON数组 如下 [ { "name" : "hello,world"}, {"name" : "SB JSON”}, {“name” : "SB互联网房地产CNM“}, ] 瞧,蛋疼不...CJSON过来还是得搜下网…