dockerfile安装php遇到的坑
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz
(1/42) Installing m4 (1.4.18-r0)
(2/42) Installing libbz2 (1.0.6-r6)
(3/42) Installing perl (5.26.2-r1)
(4/42) Installing autoconf (2.69-r0)
(5/42) Installing pkgconf (1.3.10-r0)
(6/42) Installing dpkg-dev (1.18.24-r0)
(7/42) Installing dpkg (1.18.24-r0)
(8/42) Installing libmagic (5.32-r0)
(9/42) Installing file (5.32-r0)
(10/42) Installing libgcc (6.4.0-r5)
(11/42) Installing libstdc++ (6.4.0-r5)
(12/42) Installing binutils-libs (2.30-r1)
(13/42) Installing binutils (2.30-r1)
(14/42) Installing gmp (6.1.2-r1)
(15/42) Installing isl (0.18-r0)
(16/42) Installing libgomp (6.4.0-r5)
(17/42) Installing libatomic (6.4.0-r5)
(18/42) Installing mpfr3 (3.1.5-r1)
(19/42) Installing mpc1 (1.0.3-r1)
(20/42) Installing gcc (6.4.0-r5)
(21/42) Installing musl-dev (1.1.18-r3)
(22/42) Installing libc-dev (0.7.1-r0)
(23/42) Installing g++ (6.4.0-r5)
(24/42) Installing make (4.2.1-r0)
(25/42) Installing re2c (1.0.2-r0)
(26/42) Installing libattr (2.4.47-r6)
(27/42) Installing libacl (2.2.52-r3)
(28/42) Installing coreutils (8.28-r0)
(29/42) Installing curl-dev (7.61.1-r1)
(30/42) Installing ncurses-terminfo-base (6.0_p20171125-r1)
(31/42) Installing ncurses-terminfo (6.0_p20171125-r1)
(32/42) Installing ncurses-libs (6.0_p20171125-r1)
(33/42) Installing ncurses-dev (6.0_p20171125-r1)
(34/42) Installing libedit (20170329.3.1-r3)
(35/42) Installing libedit-dev (20170329.3.1-r3)
(36/42) Installing libressl-dev (2.6.5-r0)
(37/42) Installing zlib-dev (1.2.11-r1)
(38/42) Installing libxml2 (2.9.8-r1)
(39/42) Installing libxml2-dev (2.9.8-r1)
(40/42) Installing sqlite-libs (3.21.0-r1)
(41/42) Installing sqlite-dev (3.21.0-r1)
(42/42) Installing .build-deps (0)
Executing busybox-1.27.2-r11.trigger
OK: 242 MiB in 64 packages
+ export CFLAGS=-fstack-protector-strong -fpic -fpie -O2 CPPFLAGS=-fstack-protector-strong -fpic -fpie -O2 LDFLAGS=-Wl,-O1 -Wl,--hash-style=both -pie
+ docker-php-source extract
/bin/sh: docker-php-source: not found
The command '/bin/sh -c set -xe && apk add --no-cache --virtual .build-deps $PHPIZE_DEPS coreutils curl-dev libedit-dev libressl-dev libxml2-dev sqlite-dev && export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" && docker-php-source extract && cd /usr/src/php && gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)" && ./configure --build="$gnuArch" --with-config-file-path="$PHP_INI_DIR" --with-config-file-scan-dir="$PHP_INI_DIR/conf.d" --enable-option-checking=fatal --with-mhash --enable-ftp --enable-mbstring --enable-mysqlnd --with-curl --with-libedit --with-openssl --with-zlib $(test "$gnuArch" = 's390x-linux-gnu' && echo '--without-pcre-jit') $PHP_EXTRA_CONFIGURE_ARGS && make -j "$(nproc)" && make install && { find /usr/local/bin /usr/local/sbin -type f -perm +0111 -exec strip --strip-all '{}' + || true; } && make clean && cp -v php.ini-* "$PHP_INI_DIR/" && cd / && docker-php-source delete && runDeps="$( scanelf --needed --nobanner --format '%n#p' --recursive /usr/local | tr ',' '\n' | sort -u | awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' )" && apk add --no-cache --virtual .php-rundeps $runDeps && apk del .build-deps && pecl update-channels && rm -rf /tmp/pear ~/.pearrc' returned a non-zero code: 127
/bin/sh: docker-php-source: not found进入当前容器,发现docker-php-source文件存在但是也无法执行~
纠结办法编辑docker-php-source文件发现惊天大秘密
#!/bin/sh^M
在linux下,不可避免的会用VIM打开一些windows下编辑过的文本文件。我们会发现文件的每行结尾都会有一个^M符号,这是因为 DOS下的编辑器和Linux编辑器对文件行末的回车符处理不一致,
对于回车符的定义:
windows:0D0A
unix\linux: 0A
MAC: 0D
比较快捷的去除这些符号的方法有这么几种:
(1)是用VI的命令:
使用vi打开文本文件
vi dos.txt
命令模式下输入
:set fileformat=unix
:w
(2) VI下使用正则表达式替换
g/\^M/s/\^M//
或者
%s/^M//g
(3)使用sed 工具
sed ’s/^M//’ filename > tmp_filename
(4)既然window下的回车符多了‘\r’,那么当然通过删除‘\r’ ,也可以实现:
tr -d '\r'
(5)最后一个方法是本人最常用的方法,个人觉得最方便
在终端下敲命令:
$ dos2unix filename
直接转换成unix格式,就OK了!~
dockerfile安装php遇到的坑的更多相关文章
- Appium环境的安装以及一路上的坑
Appium环境的安装以及一路上的坑 第一步环境的安装 l javaJDK的安装以及环境变量的配置这个我就不说了网上的教程全都是,搜一个安装一下吧 l AndroidSDK的安装也是如此我是直接安 ...
- flutter 安装过程遇到的坑
Flutter是一个移动应用程序的软件开发工具包(SDK),用一个代码库构建高性能.高保真的iOS和Android应用程序.目标是使开发人员能够为Android和iOS提供自然的高质量的应用,在滚动行 ...
- 安装redis时候的坑
安装redis时候的坑 随手记录一下,以此为借鉴. 1.按照需求下载redis服务 redis可视化文件 2.安装及环境搭建 修改服务里redis.windows-service.conf文件,或者r ...
- redis安装及遇到的坑-linux
获取Redis安装包“redis-4.0.8.tar.gz”,上传Linux服务器; 使用root用户解压: tar zxvf redis-4.0.8.tar.gz -C /usr/local/; 进 ...
- Docker Alpine Dockerfile 安装nginx,最小镜像
Docker Alpine Dockerfile 安装nginx,最小镜像 FROM alpine MAINTAINER will ## 将alpine-linux:apk的安装源改为国内镜像 RUN ...
- ubuntu 16.04 Dockerfile 安装mysql
默认上MariaDB的包并没有在Ubuntu仓库中.要安装MariaDB,我们首先要设置MariaDB仓库. 配置MariaDB 仓库 # apt-get install software-prope ...
- Mac安装mysql遇到的坑
使用XMPP前安装了mysql,小白遇到好多坑,不要见怪 mysql官网下载,选择Community中扩展名为dmg的文件 安装完成后要记住密码,重要的事情只说一遍,对了,安装时也没有偏好设置和自启动 ...
- 安装恢复Windows10各种坑
1.安装Windows10最好用微软原装ISO,其它的第三方坑比较多,要么不支持UEFI,要么不支持MBR,要么不支持GPT. 2.恢复系统可以使用WIM备份,或Window原生备份,或者Ghost备 ...
- OSX 上安装 Scrapy 的那些坑
Scrapy 这个爬网框架真心不错,但在OSX上安装总是会出现各种的问题,在这里就作一个收集汇总.我的系统环境是 OS X El Capitan (10.11.1) 首先要保证 pip , virtu ...
随机推荐
- 量化投资与Python之NumPy
数组计算 NumPy是高性能科学计算和数据分析的基础包.它是pandas等其他各种工具的基础.NumPy的主要功能:ndarray,一个多维数组结构,高效且节省空间无需循环对整组数据进行快速运算的 ...
- centos6.5下vsftpd服务的安装及配置并通过pam认证实现虚拟用户文件共享
FTP的全称是File Transfer Protocol(文件传输协议),就是专门用来传输文件的协议.它工作在OSI模型的第七层,即是应用层,使用TCP传输而不是UDP.这样FTP客户端和服务器建立 ...
- python与redis
1.什么是redis Redis 是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset ...
- LeetCode(44): 通配符匹配
Hard! 题目描述: 给定一个字符串 (s) 和一个字符模式 (p) ,实现一个支持 '?' 和 '*' 的通配符匹配. '?' 可以匹配任何单个字符. '*' 可以匹配任意字符串(包括空字符串). ...
- 在 laravel 的 DB::transaction 中,为外部变量赋值
例如,我想在 laravel 的事务中,对某个外部变量赋值,然后在后续的逻辑中判断该变量的属性 $user = null; // init DB::transaction(function() use ...
- Ext.Js核心函数( 三)
ExtJs 核心函数简介 1.ExtJs提供的常用函数2.get.fly.getCmp.getDom.getBody.getDoc3.query函数和select函数4.encode函数和decode ...
- 08 IO库
#include<iostream> #include<vector> #include<string> #include<fstream> using ...
- PTA之求单链表结点的阶乘和
本题要求实现一个函数,求单链表L结点的阶乘和.这里默认所有结点的值非负,且题目保证结果在int范围内. 时间限制: 400ms 内存限制: 64MB 代码长度限制: 16KB 函数接口定义: int ...
- KNN分类算法补充
KNN补充: 1.K值设定为多大? k太小,分类结果易受噪声点影响:k太大,近邻中又可能包含太多的其它类别的点. (对距离加权,可以降低k值设定的影响) k值通常是采用交叉检验来确定(以k=1为基准) ...
- jQuery如何退出each循环 和如何退出function函数
1.在函数内部使用return false是跳出function; 2.在each的回调函数中使用return false,是跳出each循环;return true 进入下一个循环: 3.break ...