相关shell脚本:点击下载
#Linux查看版本说明当前CPU运行在32bit模式下,但不代表CPU不支持64bit
getconf LONG_BIT
#查看Linux版本,内核版本
lsb_release -a
#安装lrzsz,使用:上传文件(rz filename)、下载文件(sz filename)
yum -y install lrzsz
#挂载磁盘
mount /dev/sdb /home/
#修改永久挂载
vim /etc/fstab
/dev/sdb /home ext4 defaults 0 1
#给sh文件赋执行权限
sudo chmod +x /home/sh/gitlab.sh
#删除容器
docker rm [CONTAINER ID]
docker rm 5958914cc558
#删除镜像
docker rmi [IMAGE ID]
docker rmi 5958914cc558
#查看镜像
docker images
#查看容器
docker ps -a
#停止容器
sudo docker stop [CONTAINER ID]
#停止所有容器
docker stop $(docker ps -a -q)
#删除所有容器
docker rm $(docker ps -a -q)
#删除所有镜像
docker rmi $(docker images -q)
#卸载docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#设置开机启动docker
sudo systemctl enable docker
#启动 Docker
sudo systemctl start docker
#停止 Docker
sudo systemctl stop docker
#重启Docker
sudo systemctl restart docker
#查看 Docker状态
sudo systemctl status docker
#关闭防火墙
systemctl stop firewalld
#开启防火墙
systemctl disable firewalld
#查看防火墙状态
systemctl status firewalld
#查看最后1000行日志
docker logs --tail=1000 mysql
#查看实时日志
docker logs -f mysql
#Docker容器中安装vim
apt-get update
apt-get install vim
#修改时区
tzselect
#查找中国时区的完整名称
timedatectl list-timezones |grep Shanghai
#其他时区以此类推
timedatectl set-timezone Asia/Shanghai
#或者直接手动创建软链接
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#查看端口占用情况
netstat -tunlp
#Docker支持以下的64位 CentOS 版本:CentOS7 CentOS8 更高版本...
#Docker建议内核在 3.8 以上
#############################################################################################开始安装Docker
#查看内核(Docker建议内核在 3.8 以上)
sudo uname -r
#卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
#安装所需的软件包
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2
#设置仓库
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#安装 Docker Engine-Community
sudo yum install docker-ce docker-ce-cli containerd.io
或者
sudo yum install docker-ce-18.09.1 docker-ce-cli-18.09.1 containerd.io
#启动 Docker
sudo systemctl start docker
#查看 Docker状态
sudo systemctl status docker
#Docker 镜像加速
#新建文件:/etc/docker/daemon.json
vim /etc/docker/daemon.json
{
"registry-mirrors":["https://<你的ID>.mirror.aliyuncs.com"],
"graph": "/home/docker"
}
#registry-mirrors
#网易:https://hub-mirror.c.163.com/
#阿里云:https://<你的ID>.mirror.aliyuncs.com
#七牛云加速器:https://reg-mirror.qiniu.com
#阿里云镜像获取地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors,登陆后,左侧菜单选中镜像加速器就可以看到你的专属地址了
#graph:设置本地docker路径
#重新加载daemon
sudo systemctl daemon-reload
#重启Docker
sudo systemctl restart docker
#############################################################################################开始拉取Docker镜像
#拉取nginx
docker pull nginx:1.14.2
#拉取redis
docker pull redis:3.2.12
#拉取mysql
docker pull mysql:5.7.30
#拉取gitlab
docker pull gitlab/gitlab-ce:13.0.3-ce.0
#############################################################################################端口占用情况
#gitlab
8443——>443
13800——>80
13023——>22
#mysql
13306——>3306
#redis
13379——>6379
#nginx
13080——>80
#############################################################################################开始启动Docker容器
#新建文件夹存储shell脚本
mkdir /home/sh
cd /home/sh
#上传shell脚本
rz
#授权
sudo chmod +x /home/sh/*
#关闭防火墙和selinux
systemctl stop firewalld
systemctl status firewalld
vi /etc/selinux/config
把SELINUX=enforcing 改成 SELINUX=disabled
#将文件放入指定目录
#启动
cd /home/sh/
sh gitlab.sh
sh mysql.sh
sh redis.sh
sh nginx.sh
#############################################################################################配置mysql
#修改mysql,root密码
vim /home/dockerfile/mysql-data/conf/my.cnf
#在mysql配置文件/etc/my.cnf最后追加一行代码(skip-grant-tables),意思就是跳过跳过授权表
#重启mysql容器
docker restart mysql
#进入mysql容器
docker exec -it mysql bash
#登录mysql
mysql -uroot
#修改密码
mysql>update mysql.user set authentication_string=password('new password') where user='root';
#刷新生效
mysql>flush privileges;
#退出mysql
exit
#退出mysql容器
exit
#删除在mysql配置文件/etc/my.cnf最后追加一行代码(skip-grant-tables)
vim /home/dockerfile/mysql-data/conf/my.cnf
#创建mysql用户
CREATE USER 'testusername'@'%' IDENTIFIED BY 'testpasswd';
CREATE USER 'testusername'@'localhost' IDENTIFIED BY 'testpasswd';
#赋权
GRANT all ON *.* TO 'testusername'@'%';
GRANT all ON *.* TO 'testusername'@'localhost';
FLUSH PRIVILEGES;
#查看用户权限
SELECT * FROM user WHERE `user` = 'testusername';
#查看mysql默认引擎
show engines;
#查看innodb配置,针对优化
show variables like "%innodb%";
#############################################################################################配置gitlab
#GitLab配置ssh key
#https://www.jianshu.com/p/94b39f278214
#GitLab权限说明
Guest(匿名用户) - 创建项目、写留言薄
Reporter(报告人)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段
Developer(开发者)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段、创建合并请求、创建新分支、推送不受保护的分支、移除不受保护的分支 、创建标签、编写wiki
Master(管理者)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段、创建合并请求、创建新分支、推送不受保护的分支、移除不受保护的分支 、创建标签、编写wiki、增加团队成员、推送受保护的分支、移除受保护的分支、编辑项目、添加部署密钥、配置项目钩子
Owner(所有者)- 创建项目、写留言薄、拉项目、下载项目、创建代码片段、创建合并请求、创建新分支、推送不受保护的分支、移除不受保护的分支 、创建标签、编写wiki、增加团队成员、推送受保护的分支、移除受保护的分支、编辑项目、添加部署密钥、配置项目钩子、开关公有模式、将项目转移到另一个名称空间、删除项目
#GitLab 修改时区,修改SSH和HTTP克隆代码端口不显示问题
#进入gitlab容器
docker exec -it gitlab bash
#修改时区
tzselect
#4——9——1——1
#关闭gitlab
docker stop gitlab
docker rm gitlab
#修改配置文件时区
vim /home/dockerfile/gitlab-data/etc/gitlab.rb
gitlab_rails['time_zone'] = 'Asia/Shanghai'
#修改HTTP方式clone代码的端口(此处有神坑)
#一般启动为docker run --detach -p 8443:443 -p 13800:80 -p 13023:22 ……,
#把docker容器80端口映射到宿主机13800端口,同时又修改了external_url为13800端口,所以实际上是把80映射到了13800,而修改后的gitlab访问端口为13800没有映射,所以修改后无法访问web管理页面。
#此时改启动端口映射-p 13800:80改为-p 13800:13800,则访问正常,HTTP方式clone代码的端口也正常
#参考:https://www.jianshu.com/p/d707f70c60d2
vim /home/dockerfile/gitlab-data/etc/gitlab.rb
external_url 'http://IP:PORT/'
#修改SSH方式clone代码的端口
#查询ssh_port在配置文件中的行数
grep -n "ssh_port" /home/dockerfile/gitlab-data/etc/gitlab.rb
#返回508行,修改,如不清楚508行可下载下来该文件查看
vim /home/dockerfile/gitlab-data/etc/gitlab.rb
gitlab_rails['gitlab_shell_ssh_port'] = XXXXX
#重启容器
sh /home/sh/gitlab.sh
#############################################################################################安装jira
#参考文档
#https://zhile.io/
#https://www.jianshu.com/p/b95ceabd3e9d
#https://github.com/cptactionhank/docker-atlassian-jira-software
#https://gitee.com/pengzhile/atlassian-agent
#新建jira数据库与用户
grant all privileges on *.* to jira_user@'%' identified by 'jira_user_pwd';
flush privileges;
#新建jira文件夹
mkdir /home/jira
cd /home/jira
#新建文件
vim Dockerfile
#以下为Dockerfile文件内容
FROM cptactionhank/atlassian-jira-software:latest
USER root
COPY "atlassian-agent.jar" /opt/atlassian/jira/
RUN echo 'export CATALINA_OPTS="-javaagent:/opt/atlassian/jira/atlassian-agent.jar ${CATALINA_OPTS}"' >> /opt/atlassian/jira/bin/setenv.sh
#保存退出
#目录结构
- JIRA
--Dockerfile
--atlassian-agent.jar
#拉取jira
docker build ../jira -t jira/jira:8.9.0
#给jira启动脚本授权
sudo chmod +x /home/sh/*
#启动jira
sh /home/sh/jira.sh
#访问地址配置
#破解
java -jar atlassian-agent.jar -d -m 111111@qq.com -n test -p jira -o http://localhost:13801 -s xxxx-xxxx-xxxx-xxxx
#重要文件路径
/var/atlassian/jira/dbconfig.xml
/opt/atlassian/jira/bin/start-jira.sh
/opt/atlassian/jira/bin/stop-jira.sh
#############################################################################################配置JDK1.8
#解压
tar zxvf jdk-8u211-linux-x64.tar.gz
#将JDK移到/usr/local/目录
mv jdk1.8.0_211/ /usr/local/
#修改系统配置文件
vi /etc/profile
#新增如下3行
export JAVA_HOME=/usr/local/jdk1.8.0_211
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
#重新加载系统配置文件
source /etc/profile
#查看java版本
java -version
#############################################################################################宿主机安装jira
#下载
wget https://downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-8.0.3-x64.bin
#授权
chmod +x atlassian-jira-software-8.0.3-x64.bin
#按照指令安装
./atlassian-jira-software-8.0.3-x64.bin
#jira程序目录
/opt/atlassian/jira
#jira数据目录
/var/atlassian/application-data/jira
#mysql驱动包替换
cp ./mysql-connector-java-5.1.46.jar /opt/atlassian/jira/lib
#破解包替换
cp ./atlassian-extras-3.2.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/lib
#删除新的插件包
#破解插件包替换
cp ./atlassian-universal-plugin-manager-plugin-2.22.jar /opt/atlassian/jira/atlassian-jira/WEB-INF/atlassian-bundled-plugins/
#启动jira
sh /opt/atlassian/jira/bin/startup.sh
相关shell脚本:点击下载
本文档详细介绍了如何在Linux系统中安装Docker,并通过Shell脚本演示了如何利用Docker安装和配置常用的软件,为系统运维工作提供便利。

1873

被折叠的 条评论
为什么被折叠?



