Tôi còn khá mới với docker và vì vậy tôi đang cố gắng tìm hiểu thêm về nó bằng cách sử dụng dự án laravel, tôi đang làm theo hướng dẫn này:
Ive đã điều chỉnh Dockerfile một chút so với những gì hướng dẫn có nhưng ngay cả tệp hướng dẫn cũng gây ra kết quả tương tự.
FROM php:7.3-fpm
# Copy composer.lock and composer.json
COPY composer.lock composer.json /var/www/
# Install dependencies
RUN curl -sL https://deb.nodesource.com/setup_10.x | bash - && \
apt-get update && apt-get install -y mysql-client \
RUN npm install -g npm
# Clear cache
RUN apt-get clean && rm -rf /var/lib/apt/lists/*
# Install extensions
RUN docker-php-ext-install pdo pdo_mysql
# Install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# Add user for laravel application
RUN groupadd -g 1000 www
RUN useradd -u 1000 -ms /bin/bash -g www www
# Copy existing application directory contents
COPY . /var/www
# Copy existing application directory permissions
COPY --chown=www:www . /var/www
# Change current user to www
USER www
# Set working directory
WORKDIR /var/www
# Expose port 9000 and start php-fpm server
EXPOSE 9000
CMD ["php-fpm"]
Nhưng tôi vẫn gặp lỗi sau khi chạy docker-compose up -d
:
E: Package 'mysql-client' has no installation candidate
ERROR: Service 'app' failed to build: The command '/bin/sh -c curl -sL https://deb.nodesource.com/setup_10.x | bash - && apt-get update && apt-get install -y mysql-client nodejs build-essential vim git curl' returned a non-zero code: 100
Tui bỏ lỡ điều gì vậy?
Tôi mong đợi điều này sẽ hoạt động vì tôi đang chạy apt-get update
trước khi cài đặt mysql-client
.
Cảm ơn.
default-mysql-client
thực hiện thủ thuật, cảm ơn!